如果我有这个对象:
var myclass = {
foo: {
bar: function(var) {}
},
some: {
bar: function(var) {}
}
}
Run Code Online (Sandbox Code Playgroud)
我想调用bar函数取决于定义对象的父级别的变量,如下所示:
var part = "some";
myclass.part.bar(var);
Run Code Online (Sandbox Code Playgroud)
我能怎么做?
您可以使用数组访问表示法来执行此操作:
myclass[part].bar(var);
Run Code Online (Sandbox Code Playgroud)
JavaScript对象就像关联数组,您可以使用属性名来设置或获取属性的值,甚至可以使用此语法创建新属性.
例如:
var obj = { a : 1 };
console.log(obj["a"]); // 1
obj["b"] = 2; // this creates a property called b and assigns 2 as the value
console.log(obj["b"]); // 2
Run Code Online (Sandbox Code Playgroud)