将属性添加到JavaScript中的对象数组

时间:2019-10-26 18:35:43

标签: javascript node.js

我有一个对象数组:

parsedObjs = [


    {
     BusinessName: 'Exmaple1...',
     Employeeid: 1234664,
     Rank: 3,
     PublishDate: 2019-08-09T21:00:00.000Z
    },
    {
     BusinessName: 'Exmaple2....',
     Employeeid: 1234666,
     Rank: 4,
     PublishDate: 2019-08-09T21:00:00.000Z
    },

    ... more

]

和一个我想添加到每个对象的属性:

const addThis = {supplier: req.supplier.id}

我尝试使用传播运算符:

   const spreadedItems = [
            ...parsedObjs,
            addThis 
          ];

但这并不能解决问题。

如何将属性添加到对象数组?

2 个答案:

答案 0 :(得分:2)

要向需要遍历数组的每个元素添加属性,可以使用map

let parsedObjs = [{BusinessName: 'Exmaple1...',Employeeid: 1234664,Rank: 3,PublishDate: '019 - 08 - 09 T21: 00: 00.000 Z2'},{BusinessName: 'Exmaple2....',Employeeid: 1234666,Rank: 4,PublishDate: '2019 - 08 - 09 T21: 00: 00.000 Z'},]
const addThis = {supplier: 'some id'}

const spreadedItems = parsedObjs.map(current => ({ ...current,
  ...addThis
}))

console.log(spreadedItems)

答案 1 :(得分:2)

您是否想将该属性添加到数组中的每个对象?

为此,您必须对其进行迭代并更改每个项目。 .map()方法是您在那里的朋友:

parsedObjs.map(item => ({...item, supplier: req.supplier.id}));

应该可以解决问题