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

Javascript 对象-在定义对象之前调用对象,javascript,object,Javascript,Object,看一看。运行我的网页时,它会显示: TypeError:字典不是构造函数 然而,当我在Firefox控制台上复制和粘贴相同的东西时,它工作得非常完美。怎么了 var dict = new Dictionary() 这部分代码必须放在字典的定义之后,否则它显然会失败。它在控制台中起作用,因为控制台将在定义对象后运行,而在代码中,您试图实例化一个尚不存在的类。是否是因为 var dict = new Dictionary(); var Dictionary = function () { ...

看一看。运行我的网页时,它会显示:

TypeError:字典不是构造函数

然而,当我在Firefox控制台上复制和粘贴相同的东西时,它工作得非常完美。怎么了

var dict = new Dictionary() 

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

是否是因为

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

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

因此,当您
新建时
,变量
字典
未定义的

请在此处包含相关代码。。。尽管如此,看起来它可能是Firefox控制台中的一个bug-它也不应该在那里工作(实际上在我的Firefox控制台中也不工作-你一定没有完全按照你在那里的方式把它放进去)。例如,它在Chrome控制台中不起作用-相同的错误。请分别尝试每个对象。简而言之,
字典
的可能重复项在定义提升到顶部时已定义(但值为
未定义
),但是这个函数是在你尝试运行
新字典
@JamesThorpe之后很久才分配的。它似乎是重复的,但直到给出答案我才意识到。谢谢,它成功了。顺便说一下,如果你能提供一份推荐信,那就更好了。