在Javascript中,如何转换字符串以使其可用于调用属性?
因此,我有一个关联数组,数组中的键是对象的属性。我想在数组中循环,并在每个交互中执行如下操作:在Javascript中,如何转换字符串以使其可用于调用属性?,javascript,properties,string,Javascript,Properties,String,因此,我有一个关联数组,数组中的键是对象的属性。我想在数组中循环,并在每个交互中执行如下操作: Object.key 但是,这不起作用,并导致返回未定义的属性值,而不是属性值 有办法做到这一点吗?有。假设key是一个字符串,请尝试myObject[key]您应该使用括号表示法属性访问器: var value = object[key]; 此运算符甚至可以计算表达式,例如: var value = object[condition ? 'key1' : 'key2']; 更多信息: 不
Object.key
但是,这不起作用,并导致返回未定义的属性值,而不是属性值
有办法做到这一点吗?有。假设
key
是一个字符串,请尝试myObject[key]
您应该使用括号表示法属性访问器:
var value = object[key];
此运算符甚至可以计算表达式,例如:
var value = object[condition ? 'key1' : 'key2'];
更多信息:
不要忘记,
Array
objects的方法除了使用数字索引外,还可以添加任何属性名,但事实并非如此,因此可以使用一个简单的对象实例来表示数组对象(即var obj=[];
或var obj=new Array();
您可以使用一个简单的对象实例(即var obj={}
或var obj=new Object();
您可以使用for…in循环:
for (var key in obj) {
//key is a string containing the property name.
if (!obj.hasOwnProperty(key)) continue; //Skip properties inherited from the prototype
var value = obj[key];
}