This question already has answers here:
Get json value from string containing key path [duplicate]
(3个答案)
5年前关闭。
我有这个JSON
我也有这个数组:
如何使用该路径获取
(3个答案)
5年前关闭。
我有这个JSON
var myJSON = {
"a": {
"b": {
"c": {
"Foo": "Bar"
}
}
}
}
我也有这个数组:
var path = ["a", "b", "c", "foo"]
如何使用该路径获取
Bar
? 最佳答案
checkout Array.prototype.reduce()
。这将从myJSON
开始,然后遍历path
中定义的每个嵌套属性名称。
var myJSON = {
"a": {
"b": {
"c": {
"Foo": "Bar"
}
}
}
};
var path = ["a", "b", "c", "Foo"]; // capitalized Foo for you...
var val = path.reduce((o, n) => o[n], myJSON);
console.log("val: %o", val);