javascript - 将数组转换为包含对象

标签 javascript arrays object

如何将这样的简单数组:['foo', 'bar', 'baz']转换为这样的对象:

{ 'foo': {
    'bar': {
      'baz' : {}
    }
  }
}

看似简单,但我却想不通。

最佳答案

我想这就是你想要的:

function arrayToNestedObject(arr) {
    var obj = {},
        current = obj;

    for(var i = 0; i < arr.length; i++) {
        var key = arr[i];
        current = current[key] = {};
    }

    return obj;
}

console.log(arrayToNestedObject(['foo', 'bar', 'baz']));

关于javascript - 将数组转换为包含对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25594135/

相关文章:

c# - 在另一个数组中查找一个数组 (byte[])?

javascript - 为模块化返回空函数有什么用?

javascript - React Native - 如何从 NavigationExperimental 的 NavigationHeader 中删除 1px 导航栏细线?

javascript - 相同的正则表达式验证适用于服务器端,但不适用于客户端

python - Numpy Interweave 奇怪形状的数组

c++ - 从字符串文字初始化字符数组是数组复制初始化的情况吗?

javascript - 查询某个元素是否有超过1个id,如果有,则将它们连接起来并放回1个id

javascript - 范围名称未在 Controller 中隔离?

object - LISP如何在从另一个变量中取出对象的名称后从变量中调用对象

javascript - 通过 JSON 传递 JavaScript 函数