var arr=['a','b','c','d','e','f','g'], obj={};
obj['a']?null:obj['a']={};
obj['a']['b']?null:obj['a']['b']={};
obj['a']['b']['c']?null:obj['a']['b']['c']={};
obj['a']['b']['c']['d']?null:obj['a']['b']['c']['d']={};
// 。。。
数组arr长度是动态变化的,
有什么递归的方法可以实现创建上面这种多层嵌套结构的JS对象,
“['a']['b']['c']”这一串东西是否可以存为某种变量?
谢谢。
var arr=['a','b','c','d','e','f','g'], obj={};
function forMats(index,item) {
if(index == arr.length) return;
console.log(item)
item[arr[index]]?null:item[arr[index]]={};
forMats(index+1, item[arr[index]])
}
forMats(0, obj)
console.log(obj)