Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.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/3/arrays/14.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_Arrays_String_Object - Fatal编程技术网

Javascript 从数组中的对象访问嵌套值的字符串

Javascript 从数组中的对象访问嵌套值的字符串,javascript,arrays,string,object,Javascript,Arrays,String,Object,我有一个有点奇怪的问题, 我想知道是否可以使用字符串作为整个引用从数组中的对象获取值 这是我的阵列: const myArray = [ {name: 'element1', id: 'elementid1'}, {name: 'element2', id: 'elementid2'} ]; 其中myArray[0][“name”]返回:“element1” 是否可以将整个引用:myArray[0][“name”]作为字符串:“myArray[0][“name”]”并使用它引用

我有一个有点奇怪的问题, 我想知道是否可以使用字符串作为整个引用从数组中的对象获取值

这是我的阵列:

const myArray = [
    {name: 'element1', id: 'elementid1'},
    {name: 'element2', id: 'elementid2'}
];
其中
myArray[0][“name”]
返回:“element1”

是否可以将整个引用:
myArray[0][“name”]
作为字符串:“myArray[0][“name”]”并使用它引用此值

因此:
getViaString
返回带有以下设置的“element1”:

const getViaString = 'myArray[0]["name"]';
我设置了这把小提琴,因为它可能更好地解释了我要做的事情:


谢谢。

是的,你可以用

const getViaString = eval('myArray[0]["name"]');

是的,你可以用它

const getViaString = eval('myArray[0]["name"]');

您可能会使用
eval()
——不推荐使用

const getViaString = eval("myArray[0]['name']");

您可能会使用
eval()
——不推荐使用

const getViaString = eval("myArray[0]['name']");

eval(getViaString)
你做的一切都是对的,但是你在你的价值周围加了引号。只需执行const getViaString=myArray[0][“name”]@StevenStark如果删除这些引号,它将不再是一个字符串:(那么您需要其他人推荐的eval,但这是一种设计应用程序的糟糕方式,而且是一种反模式。
eval(getViaString)
你做的一切都是对的,但是你在你的值周围加了引号。只需执行
const getViaString=myArray[0][“name”];
@StevenStark如果删除这些引号,它将不再是字符串:(那么,您需要其他人推荐的eval,但这是一种设计应用程序的糟糕方式,是一种反模式。如果不推荐eval,在这种特定情况下还有什么其他方法?如果不推荐eval,在这种特定情况下还有什么其他方法?