我希望通过此键从嵌套的JavaScript对象中获取值。
var t = "cont.model.Inspection.InspectionName";
如何直接通过字符串键获取嵌套对象值?
我尝试了eval(t)
,但是它给了null,但是当在控制台上运行时,这个键的值为“A”。
答案 0 :(得分:10)
您可以使用辅助函数来实现此目的,例如:
var data = {
cont: {
model: {
Inspection: {
InspectionName: "Hello world"
}
}
}
};
function getNestedValue(obj, key) {
return key.split(".").reduce(function(result, key) {
return result[key]
}, obj);
}
console.log(getNestedValue(data, "cont.model.Inspection.InspectionName"));