我有一个这样的数组["aaa","aaa","bbb","ccc"]。
我需要的是把它转换成这样的形式:
{ "aaa" :
{ "aaa" :
{ "bbb" :
{ "ccc" : 1 }
}
}
}
我知道eval可以解决问题,但是有没有更漂亮的解决方案?
感谢您阅读我的帖子。
我有一个这样的数组["aaa","aaa","bbb","ccc"]。
我需要的是把它转换成这样的形式:
{ "aaa" :
{ "aaa" :
{ "bbb" :
{ "ccc" : 1 }
}
}
}
我知道eval可以解决问题,但是有没有更漂亮的解决方案?
感谢您阅读我的帖子。
使用Array.reduceRight(). 在每次迭代中返回一个对象,之前的结果作为当前属性的值:
const arr = ["aaa","aaa","bbb","ccc"]
const result = arr.reduceRight((r, s) => ({ [s]: r }), 1)
console.log(result)