js数组对象循环的问题


const data = [{
    field: 'name',
    value: 1
  },{
    field: 'age',
    value: 2
  }]

以上数组对象转为以下,以上对象有任意多个字段,

  const result = [{
    name: 1,
    age: 2
  }]
阅读 2.6k
3 个回答
const data = [{
    field: 'name',
    value: 1
  },{
    field: 'age',
    value: 2
  }]
  const result = [{
    name: 1,
    age: 2
  }];
Object.fromEntries(data.map(({field,value})=>[field,value]))

image.png

const data = [{
  field: 'name',
  value: 1
}, {
  field: 'age',
  value: 2
}]

const convertedData = data.reduce((acc, curItem) => {
  acc[0][curItem.field] = curItem.value
  return acc
}, [{}])

console.log(convertedData)
const data = [{
    field: 'name',
    value: 1
},{
    field: 'age',
    value: 2
}]

const result = [].concat(data.reduce((p, c) => (p[c.field] = c.value, p), {}));

field有重复的话, 会覆盖前面的value

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题