我如何使用字符串数组获取对象属性(属性的名称)? (在阵列的最后一个元素是物体的内属性)Javascript:如何使用字符串数组获取对象属性?
见下面的代码:
方便的方法:
let myObject = {
"property": {
"subproperty": {
"targetproperty": "Hi, We done it!"
}
}
};
let myString = "property:subproperty:targetproperty";
let parts = myString.split(":");
console.log(myObject[ parts[ 0 ] ][ parts[ 1 ] ][ parts[ 2 ] ]); // Output: "Hi, We done it!"
评估和演示方式:
let myObject = {
"property": {
"subproperty": {
"targetproperty": "Hi, We done it!"
}
}
};
let myString = "property:subproperty:targetproperty";
let parts = myString.split(":");
let code = "myObject";
for (let i = 0; i < parts.length; i++) {
code += "['" + parts[ i ] + "']";
}
code += ";";
console.log(code);
console.log(eval(code)); // Output: "Hi, We done it!"
评估和演示是恶。所以我需要一个更干净的方式来做到这一点。
我怎么做它没有EVAL和方便的工作吗?
这个答案是去天堂! –
谢谢。这太棒了。 –