у меня есть два массива объектов:Как объединить два словаря в JavaScript
Array1:
var myArr1 = [];
myArr1["1"]={any:1,some:1};
myArr1["2"]={any:2,some:2};
myArr1["3"]={any:3,some:3};
array2:
var myArr2 = [];
myArr2["1"]={other:1};
myArr2["2"]={other:2};
И я хочу, чтобы они были объединены с помощью их ключей в новый атрибут, поэтому результатом будет:
[
{any:1,some:1,myNewAttribute:{other:1}},
{any:2,some:2,myNewAttribute:{other:2}},
{any:3,some:3,myNewAttribute:{other:3}}
]
Я попытался добиться этого с помощью lodash's _.merge()
, но я потерпел неудачу с треском. _.merge
только добавляет второй массив после первого, но не соответствует их ключам/идентификаторам.
Является ли это псевдо-код? Javascript имеет объекты, а не dicts. Что именно не сработало для вас с '_.merge'? –
Глядя на ваш желаемый результат, первый элемент имеет свойство 'some', но не второе или третье? Это действительно то, что вы хотите, или вы хотите использовать свойство 'some' для всех элементов в результате? –
Я редактировал вопрос. Я знаю, как вручную комбинировать их с 'for'-loop, но я хотел сохранить его элегантным с lodash .. –