将数组转换为json对象

时间:2014-07-03 09:37:14

标签: javascript arrays object

我在javascript中有一个数组..类似于: var myarray = ['a','b',c'];var item = 'Name'; 我希望将其转换为类似

的内容
{
 a:{
    b:{
       c:{
          item:'Name'     
         }
      }
   }
}

2 个答案:

答案 0 :(得分:3)

var result = myarray.reverse().reduce(function (value, key) {
    var result = {};
    result[key] = value;
    return result;
}, { item : item });

换句话说,您使用数组中的键将结果逐层打包到新对象中。

答案 1 :(得分:1)

var obj = {};
var curobj = obj;
for (var i = 0; i < myarray.length; i++) {
    var newObj = {};
    newObj[myarray[i]] = newObj;
    curObj = newObj;
}
curObj.item = item;

您想要的结果将位于obj对象中。