Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript中,如何转换字符串以使其可用于调用属性?_Javascript_Properties_String - Fatal编程技术网

在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];
}