JavaScript:在不使用`ival'的情况下将平面阵列转换为像结构一样的树



我有一个像这样的数组["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)

最新更新