Javascript 使用lodash将对象数组转换为对象

Javascript 使用lodash将对象数组转换为对象,javascript,arrays,object,lodash,Javascript,Arrays,Object,Lodash,我有一个需要转换为单个对象的对象数组。 例:需要转换 var data=[ { "name": "EMPRESA", "value": "CMIP" }, { "name": "DSP_DIRECAO", "value": "CMIP@040@1900-01-01" }, { "name": "DSP_DEPT", "value": "CMIP@040@1900-01-01@42@1900-01-01" }, 。。。 ]

我有一个需要转换为单个对象的对象数组。 例:需要转换

var data=[
  {
    "name": "EMPRESA",
    "value": "CMIP"
  },
  {
    "name": "DSP_DIRECAO",
    "value": "CMIP@040@1900-01-01"
  },
  {
    "name": "DSP_DEPT",
    "value": "CMIP@040@1900-01-01@42@1900-01-01"
  },
。。。 ]

将数据[x][name]转换为房地产,将数据[x][value]转换为丁烯醚值
谢谢

不使用LoDash,而是直接还原

var数据=[ { 名称:EMPRESA, 价值:CMIP }, { 名称:DSP_DIRECAO, 价值:CMIP@040@1900-01-01 }, { 名称:数字信号处理部, 价值:CMIP@040@1900-01-01@42@1900-01-01 } ] var obj=data.reduce a,b=>{ 返回a[b.name]=b.value,a; }, {}; console.logobj 关于lodash 4.15

_.chain(data).keyBy("name").mapValues("value").value()
关于lodash 3.10

_.chain(data).indexBy("name").mapValues("value").value()

请回答问题并添加您尝试过的代码。可以通过在数组元素上循环并将键值对添加到对象中来简单地完成该操作。我没有想到这一点。荣誉逗号运算符的良好使用转换方法不需要像reduce那样返回累加器。您可以执行如下操作:const output=u.transformdata,a,b=>a[b.name]=b.value,{};我正在使用lodash 3.10。。。QuadTable.js:352未捕获类型错误:\ u0.chain….keyBy不是函数
var newObj = {}
var data = [{
    "name": "EMPRESA",
    "value": "CMIP"
}, {
    "name": "DSP_DIRECAO",
    "value": "CMIP@040@1900-01-01"
}, {
    "name": "DSP_DEPT",
    "value": "CMIP@040@1900-01-01@42@1900-01-01"
}]
data.forEach(function(d) {
    newObj[d.name] = d.value
})
_.chain(data).keyBy("name").mapValues("value").value()
_.chain(data).indexBy("name").mapValues("value").value()