我有一个简单的对象,我想通过一个函数传递一个属性名来调用一个特定的属性:
spit(name);
function spit(value) {
var test = new Object();
test.name = "Bill";
test.number = 24;
console.log(test.value);
}
以上代码应返回“Bill”。这怎么可能?
答案 0 :(得分:5)
听起来你正在寻找这样的东西:
spit('name');
function spit(value) {
var test = new Object();
test.name = "Bill";
test.number = 24;
console.log(test[value]);
}
答案 1 :(得分:0)
您正在返回尚未为该对象定义的value
属性。另外,在调用spit()
时,您没有引用参数,这可能是个问题。
尝试使用:
function spit(value) {
var test = new Object();
test.name = "Bill";
test.number = 24;
console.log(test[value]);
}
spit('name');
答案 2 :(得分:0)
function spit(value) {
var test = {
name: 'Bill',
number: 24
}
test[value] = value;
return test.value;
}