小编ant*_*et2的帖子

Javascript中的前向声明

背景

我正在构建一个基于javascript的应用程序,它在移动和桌面设备上的工作方式不同.但是,除了DOM操作之外,大多数代码在两个平台之间都是通用的,所以我构建了所有文件,如:*foo.core.js*foo.mobile.js*foo.web.js

并希望利用面向对象技术编写更清晰的代码.

问题:

我有两个JavaScript文件,带有类

档案1:

function ClassA()
{}

ClassA.prototype.foo = function(){};

GreatGrandChildA.prototype = new GrandChildA(); // this is where the error is
function GreatGrandChildA ()
{}
Run Code Online (Sandbox Code Playgroud)

文件2:

ChildA.prototype = new ClassA();
function ChildA () // ChildA inherits ClassA
{}

GrandChildA.prototype = new ChildA()
function GrandChildA () // GrandChildA inherits ClassA
{}
Run Code Online (Sandbox Code Playgroud)

通常,在像C++这样的语言中,我会GrandChildA在文件1中转发声明.我想知道如何在Javascript中执行它

编辑:

如果我创建一个包含所有四个类的单个文件 - 按照加载它们的顺序,该示例完全按预期工作:

http://jsfiddle.net/k2XKL/

javascript oop javascript-objects

6
推荐指数
1
解决办法
9475
查看次数

标签 统计

javascript ×1

javascript-objects ×1

oop ×1