给出的是这样的数组:
var level = ["a", "b", "x"];
输出应为:
{
"a": {
"b": {
"x": {
}
}
}
}
我尝试了这个:
var level = ["a", "b", "x"];
var o = {};
for (var c = 0, len = level.length; c < len; c +=1 ) {
var part = level[c];
o[part] = {}; // how to remember the last part?
}
如何记住最后一部分并添加下一个级别?
您可以检查级别是否存在,如果未设置,则仅分配一个对象。
function addLevels(levels, object) {
levels.reduce((o, l) => o[l] = o[l] || {}, object);
}
var object = {};
addLevels(["a", "b", "x"], object);
addLevels(["a", "d", "z"], object);
console.log(object);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句