#javascript #arrays #object-merging
Вопрос:
Рассмотрим следующее: у нас есть два массива, каждый из которых содержит объект.
let users: [ { "id": "some#" "name": "some name", "data": "somedata" } ], let products: [ { "product": "some#" "name": "abc", }, ]
По сути, сравните оба объекта, если второй объект обладает тем же свойством, что и первый, сохраните вторую опору и значение, если нет, добавьте опору/значение из первого.
Таким образом, результат будет :
{ "id": "some#", "name": "abc", "data": "somedata" }
Ответ №1:
Попробуй это:
if (!(users[0].name === products[0].name)) { product[0].data = users[0].data }
Ответ №2:
Надеюсь, это то, что вы ищете :
let users= [ { "id": "some#", "name": "some name", "data": "somedata", } ], let products = [ { "product": "some#", "name": "abc", }, ] for (key in users[0]) { if(products[0][key]){ users[0][key] = products[0][key]; }else{ continue; } } console.log(users)