将数组转换为对象
假设我们有一个字符串数组,例如 ['a', 'b', 'c' ],并想将其转换为对象。我们如何实现这一点?
ECMAScript 6 和 Spread 语法
在 ECMAScript 6 中,我们有 Object.assign(),这是一个有用的方法,使我们能够合并属性从可枚举的源对象到目标对象:
Object.assign({}, ['a','b','c']); // {0: "a", 1: "b", 2: "c"}
请注意,数组自身的长度属性是不会复制到对象中,因为它不可枚举。
ES8 中的扩展语法还允许我们从数组创建对象:
{ ...['a', 'b', 'c'] } // { a: "a", b: "b", c: "c" }
使用 Reduce 自定义键
要使用自定义键创建对象,我们可以利用reduce:
['a', 'b', 'c'].reduce((a, v) => ({ ...a, [v]: v}), {}) // { a: "a", b: "b", c: "c" }
此方法迭代数组元素,将它们组合成具有自定义键值对的新对象。
以上是如何在 JavaScript 中将数组转换为对象?的详细内容。更多信息请关注PHP中文网其他相关文章!