Jo *_*ina 9 javascript oop object
我在JS中有一个小问题,我有两个嵌套对象,我想从父进程中访问变量,如下所示:
var parent = {
a : 5,
child: {
b : 3,
displayA : function(){
console.log(this.a);
//undefined
},
displayB : function(){
console.log(this.b);
//displays 3
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道如何使parent.child.displayA工作:)(我有需要访问父变量的子对象)
任何帮助表示非常感谢!
Ori*_*iol 12
您可以使用call设置值this:
parent.child.displayA.call(parent); // 5
Run Code Online (Sandbox Code Playgroud)
您可能也有兴趣绑定它:
parent.child.displayA = function(){
console.log(this.a);
}.bind(parent);
parent.child.displayA(); // 5
Run Code Online (Sandbox Code Playgroud)
或者你可以使用parent而不是this:
parent.child.displayA = function(){
console.log(parent.a);
};
parent.child.displayA(); // 5
Run Code Online (Sandbox Code Playgroud)