Pol*_*878 2 javascript namespaces
我有以下JS代码:
window.Foo = {};
window.Foo.Name1 = function()
{
function Bar1(param1)
{
this.Name = param1;
}
}
var gMyBar = new Foo.Name1.Bar1("hello world");
alert(gMyBar.Name);
Run Code Online (Sandbox Code Playgroud)
我在Firefox错误控制台中收到错误"Foo.Name1.Bar1不是构造函数"...给出了什么?
您对JavaScript中的"命名空间"感到困惑.JavaScript没有名称空间,只有对象和函数.您已Bar1在函数闭包中声明为本地函数Name1.它不是.的成员Name.我不确定你在这里会发生什么,但我认为就是这样:
var Foo = {
Name1: {
Bar1: function(param1) {
this.Name = param1;
}
}
};
var gMyBar = new Foo.Name1.Bar1("hello world");
alert(gMyBar.Name); // hello world
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6946 次 |
| 最近记录: |