我有功能:
this.addNode = function(element){
var context = this.obj.element;
return context;
}
this.obj 是一个具有一些属性的对象。当我想从上面的变量中调用这些属性时,如何访问这些属性?
我有功能:
this.addNode = function(element){
var context = this.obj.element;
return context;
}
this.obj 是一个具有一些属性的对象。当我想从上面的变量中调用这些属性时,如何访问这些属性?
我需要做一些假设,因为这个例子并不完全清楚。假设您在构造函数中有此代码并且您想引用obj.<some-passed-name>
此对象,那么您不能使用.
而是[]
像这样
function SomeObj() {
this.obj = { a: 1, b: 2 };
this.addNode = function (element) {
var context = this.obj[element];
return context;
}
}
然后你可以像这样使用它
var o = new SomeObj();
o.addNode('a'); // returns 1
o.addNode('b'); // returns 2
但通常建议obj
像这样隐藏实现(该属性)
function SomeObj() {
var obj = { a: 1, b: 2 };
this.addNode = function (element) {
var context = obj[element]; // not using this.obj
return context;
}
}
如果你obj
作为参数传递给构造函数,那就更简单了:
function SomeObj(obj) {
this.addNode = function (element) {
var context = obj[element]; // not using this.obj
return context;
}
}
var o = new SomeObj({ a: 1, b: 2 });
o.addNode('a'); // returns 1
o.addNode('b'); // returns 2
我希望我猜对了这个问题。