对象 - 在定义对象之前调用它

时间:2016-03-31 11:13:57

标签: javascript object

看看this JavaScript code。运行我的网页时,它说:

  

TypeError:Dictionary不是构造函数。

然而,当我在Firefox控制台上复制并粘贴相同的东西时,它可以完美地工作。它有什么关系?

2 个答案:

答案 0 :(得分:2)

是因为吊装?

var dict = new Dictionary();
var Dictionary = function () { ... };

就像

var Dictionary;
var dict = new Dictionary();
Dictionary = function () { ... };

因此,当您new时,变量Dictionaryundefined

答案 1 :(得分:1)

var dict = new Dictionary() 

这部分代码必须放在Dictionary定义之后,否则显然会失败。它在您的控制台中工作,因为控制台将在定义对象后运行,而在您的代码中,您试图实现一个尚不存在的类。