【发布时间】:2017-11-19 07:39:57
【问题描述】:
如何使用键数组从嵌套对象中获取值?
// my sample object
var obj = {
type : "Purchase",
category : "Apartment",
categoryOptions : {
apartment : {
floors : {
type : "number",
value : null,
placeholder : "Total Floors"
},
},
},
}
var keysArray = ["value", "floors", "apartment", "categoryOptions"]
我尝试使用array.reduceRight 来实现这一点,但无法实现。
这是我尝试过的:
var roadToValue = keysArray.reduceRight(
function(previousValue, currentValue){
return previousValue + "[" + currentValue + "]" ;
}
);
// above function results in a single string like
// "categoryOptions[apartment][floors][value]"
// which off-course can't be used as object key
// and obj[roadToValue] results in 'undefined'
有什么方法可以让我在这里获得正确的密钥来传递给 obj 吗?
【问题讨论】:
-
大写?
"Apartment" != "apartment" -
@corn3lius 哦,这是写问题的错字。我的问题仍然存在。我会更新问题。
标签: javascript arrays javascript-objects