2013-03-29 96 views
0
整个页面

我已经定义了下面的JavaScript对象:使JavaScript对象全球对

var WealthyLaughingDuckControl = { 
    users: [], 
    setUsers: function(new_users) { 
     this.users = new_users; 
    } 
}; 

我想它是可用的铬/ Firebug的JavaScript控制台内:

> WealthyLaughingDuckControl 
// console result goes here 

在现在,我得到:

> ReferenceError: WealthyLaughingDuckControl is not defined 

我该怎么做?

+1

你有页面我们可以看到吗?也请告诉我你在$(document).ready语句中没有这个对象 –

+0

糟糕...它用'$(document).ready(function(){':/ ... ...)封装,感谢你的帮助! – ducin

回答

4

除去var关键字,或将其追加到窗口:window.WealthyLaughingDuckControl

+0

你可以看看[这个答案](http://stackoverflow.com/a/1470494/769384) - 作者说,var和non-var之间没有区别,如果它在全局范围内声明的话。在全局范围内定义我的变量,事实上 - 在var控制台中无法访问它,并且没有 - 可访问。是否这个答案不正确? – ducin

+0

也许你不在全局范围内使用'var',在您的实际页面代码,而不是您在编辑器中编写的代码,也许您的环境包装了您编写的任何JavaScript代码,您的环境究竟是什么?是纯Javascript吗? – juanpastas

+0

我的环境是NetBeans IDE。把它包装在任何东西中。好吧,我的变量是在'$(d ocument).ready(function(){'虽然...所以它不是全球性的,毕竟(对不起...) – ducin

3

在顶层即不在任何函数定义WealthyLaughingDuckControl