将新数据推入多维数组

tur*_*wer 0 javascript arrays

我有一个杂货:

[ { id: 'XXXXXXXXXX',
    message:
     'XXXXXXXXXX',
    createdTime: 'XXXXXXXXXX',
    fullPicture:
     'XXXXXXXXXX',
    reactions: 6,
    comments: 0,
    shares: 0 },
  { id: 'XXXXXXXXXX',
    message:
     'XXXXXXXXXX',
    createdTime: 'XXXXXXXXXX',
    fullPicture:
     'XXXXXXXXXX',
    reactions: 50,
    comments: 4,
    shares: 6 } ]
Run Code Online (Sandbox Code Playgroud)

我想在每个维度中推送一个新变量-称为覆盖率。

我尝试做一个看起来像这样的循环:

for(a=0; a<array.length; a++){
array[a].push("Hello": "World")
}
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不起作用-这是推入数据的正确方法吗?

Sno*_*now 5

您有一个object数组,因此您应该分配给一个object属性,而不是push

for(let a=0; a<array.length; a++){
  array[a].Hello = "World";
}

Run Code Online (Sandbox Code Playgroud)

您只能调用push数组。

使用forEach循环可能会更清楚,这需要您命名变量:

array.forEach((obj) => {
  obj.hello = 'World';
});
Run Code Online (Sandbox Code Playgroud)