我找不到一个适当的例子来说明我对生活的热爱如何做到这一点,或者即使这是可能的.根据我对exmaples片段的拼凑理解,我提出了以下结构
var t = function()
{
this.nestedOne = function()
{
this.nest = function()
{
alert("here");
}
}
}
t.nestedOne.nest();
Run Code Online (Sandbox Code Playgroud)
然而,这显然不起作用(显然).如果有人能指出我正确的方向,我将不胜感激!
这很简单:
var t = {
nestedOne: {
nest: function() {
alert('here');
}
}
};
Run Code Online (Sandbox Code Playgroud)
否则你的代码就没有意义。thisinside function 并不是指函数本身,而是指调用函数的对象上下文。而且您甚至没有在代码中调用函数。
如果我说obj.func(),那么this里面func将是obj那个电话。因此分配this.asd = true将分配true给该对象的"asd"属性。
如果你想做一个嵌套类,它看起来非常不同:
ClassA = (function() {
function ClassA() {
}
ClassA.prototype.method1 = function() {
};
function ClassB() {
}
ClassB.prototype.method1 = function() {
};
return ClassA;
}())
Run Code Online (Sandbox Code Playgroud)
现在只有 ClassA 可以创建 ClassB 的实例。这应该实现与 java 中的嵌套类相同的目标。
| 归档时间: |
|
| 查看次数: |
665 次 |
| 最近记录: |