制作可变键和深度的嵌套对象的最佳方法是什么?
例如,我想采用数组["one", "two", "Three"]
并创建以下对象:
{
one: {
key: value,
two: {
key: value2,
three: {
key: value3
}
}
}
}
我想我可以使用 for 循环,但我不确定如何跟踪每个级别。
最佳答案
您可以使用reduceRight
在每个循环中添加嵌套级别。
let arr = ["one", "two", "three"],
initialValue = { key: arr.length - 1 }
const output = arr.reduceRight((acc, k, i) =>
({
[k]: Object.assign({ key: i }, acc)
})
, initialValue)
console.log(output)
关于javascript - 制作可变键和深度的嵌套对象的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57584404/