【发布时间】:2015-12-02 22:49:08
【问题描述】:
我有一个问题,如何从数组中创建嵌套对象? IE。我有以下数组:
var myArr = ['foo', 'bar', 'baz']
并需要使其成为像这样的对象:
myObj = {foo: { bar: { baz: { } } }}
我怎样才能正确地做到这一点?
【问题讨论】:
标签: javascript arrays sorting
我有一个问题,如何从数组中创建嵌套对象? IE。我有以下数组:
var myArr = ['foo', 'bar', 'baz']
并需要使其成为像这样的对象:
myObj = {foo: { bar: { baz: { } } }}
我怎样才能正确地做到这一点?
【问题讨论】:
标签: javascript arrays sorting
使用reduce()
var myArr = ['foo', 'bar', 'baz'];
var myObj = {};
myArr.reduce(function(a, b) {
a[b] = {};
return a[b];
}, myObj);
console.log(myObj);
【讨论】:
你可以做得更好! :
let arr = ['foo', 'bar', 'baz'];
let obj = arr.reduceRight((a,c)=>({[c]:a}),{})
document.write( JSON.stringify(obj) )
使用.reduceRight()方法
【讨论】: