How to merge array of objects by key in JavaScript

2 Answers

0 votes
function mergeArrayOfObjects(arr1,arr2) {
  return arr1.map((item, i)=>{
     if (item.id === arr2[i].id) {
       return Object.assign({},item,arr2[i])
     }
  })
}


const arr1 = [
  {id:1, lang:"javascript"},
  {id:2, lang:"c++"},
  {id:3, lang:"c"}
];
const arr2 = [
    {id:1, password:3452},
    {id:2, password:9838},
    {id:3, password:1273}
];

console.log(mergeArrayOfObjects(arr1, arr2));






/*
run:

[{
  id: 1,
  lang: "javascript",
  password: 3452
}, {
  id: 2,
  lang: "c++",
  password: 9838
}, {
  id: 3,
  lang: "c",
  password: 1273
}]

*/

 



answered May 21, 2021 by avibootz
edited May 21, 2021 by avibootz
0 votes
function mergeArrayOfObjects(arr1,arr2){
   	let i = 0;
  	let mergeArr = [];

  	while (i < arr1.length) {
      if (arr1[i].id === arr2[i].id) {
        mergeArr.push({...arr1[i], ...arr2[i]})    
      }
      i++;
    }
  return mergeArr;
}


const arr1 = [
  {id:1, lang:"javascript"},
  {id:2, lang:"c++"},
  {id:3, lang:"c"}
];
const arr2 = [
    {id:1, password:3452},
    {id:2, password:9838},
    {id:3, password:1273}
];

console.log(mergeArrayOfObjects(arr1, arr2));






/*
run:

[{
  id: 1,
  lang: "javascript",
  password: 3452
}, {
  id: 2,
  lang: "c++",
  password: 9838
}, {
  id: 3,
  lang: "c",
  password: 1273
}]

*/

 



answered May 21, 2021 by avibootz
edited May 21, 2021 by avibootz

Related questions

1 answer 137 views
1 answer 123 views
123 views asked Feb 21, 2022 by avibootz
1 answer 167 views
2 answers 164 views
2 answers 231 views
2 answers 201 views
...