【发布时间】:2021-03-18 09:48:37
【问题描述】:
我将一个点分隔的字符串传递给函数
console.log( namespace('a.b.c.d.e'))
并期待得到下一个结果
//result => "{"a":{"b":{"c":{"d":{"e":{}}}}}}"
我的尝试(我不知道如何递归)
const namespace = (string)=> {
return string.split('.').reduce((acc,el)=>{
acc[el] = {}
},{})
}
【问题讨论】:
-
我可能会使用 reduceRight 之类的东西从内到外构建对象:
...reduceRight((acc, prop) => ({[prop]: acc}),{}) -
很好,这正是我试图找到的,添加这个答案
标签: javascript