javascript - 将数组中的每个项目转换为对象

标签 javascript lodash

我想知道如何将数组中的每个项目转换为指定的对象。您可以在下面看到我开始使用的数组的代码以及我试图实现的结果。我试图使用 map 函数无济于事,并且不确定 array.map() 函数是否是正确的函数,或者是否有我可以使用的 lodash 中的东西。谢谢!

const x = ["a", "b", "c"];

// expected result
{
  "a": {"foo": "bar"},
  "b": {"foo": "bar"},
  "c": {"foo": "bar"},
}

最佳答案

您可以使用Array#reduce()

const x = ["a", "b", "c"];

const res = x.reduce((a,c)=> (a[c] = {foo:'bar'},a) , {})

console.log(res)

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

相关文章:

javascript - 从嵌套对象中获取所有唯一键

javascript - 如何知道 jquery 中的元素附加了哪个处理程序?

javascript - Ajax 加载后重新初始化内容脚本?

javascript - lodash 模板中的返回函数值

javascript - 加入嵌套数组

node.js - Heroku 找不到模块 'lodash/object/assign'

javascript - ngBootBox 回调函数不起作用(AngularJS)

javascript - Jquery 中继器,为什么 .keyup 和 .change 不会在第二项及之后触发?

javascript - 获取两个日期之间的日期返回指定日期范围之外的错误日期

javascript - 如何使用带有链接支持的 lodash 和 typescript 的 mixins