как перезаписать вложенный массив объектов в JavaScript - PullRequest
0 голосов
/ 25 марта 2019

Я хотел бы знать, как объединить и перезаписать уже существующее значение объекта во вложенном массиве в javascript.

Как показано ниже, мне нужно объединить other_obj в obj с id = "zen" и перезаписать, если свойство существует, либо объединить

var obj =[
{id:"abc", 
amount: "100", 
fee: "5.5"},
{id:"xyz", 
amount: "1000", 
fee: "5.5"},
{id:"zen", 
amount: "500", 
fee: "5.5"}]

var other_obj = {
amount: 600,
name: "new"
}


Expected Output: 
{
id:"zen",
amount: 600,
fee: "5.5",
name: new
}

1 Ответ

0 голосов
/ 25 марта 2019

Использовать ... синтаксис распространения:

var obj = [{
    id: "abc",
    amount: "100",
    fee: "5.5"
  },
  {
    id: "xyz",
    amount: "1000",
    fee: "5.5"
  },
  {
    id: "zen",
    amount: "500",
    fee: "5.5"
  }
];

var other_obj = {
  amount: 600,
  name: "new"
};

var test = {};
obj.forEach(e => test = {...test, ...e});
test = {...test, ...other_obj};
console.log(test);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...