Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScript-idプロパティに従って2つの配列をマージします


オブジェクトの2つの配列があり、最初の配列にはユーザーIDとユーザー名を持つオブジェクトが含まれているとします。

配列には、ユーザーIDとユーザーアドレスを持つオブジェクトが含まれています。

配列は-

です
const arr1 = [
   {"id":"123","name":"name 1"},
   {"id":"456","name":"name 2"}
];
const arr2 = [
   {"id":"123","address":"address 1"},
   {"id":"456","address":"address 2"}
];

このような2つの配列を取り込んで、これら2つの配列をマージして3番目の配列を形成するJavaScript関数を作成する必要があります。

3番目の配列には、対応するユーザーのユーザーID、名前、およびアドレスオブジェクトが含まれている必要があります。

このためのコードは-

になります
const arr1 = [
   {"id":"123","name":"name 1"},
   {"id":"456","name":"name 2"}
];
const arr2 = [
   {"id":"123","address":"address 1"},
   {"id":"456","address":"address 2"}
];
const mergeArrays = (arr1 = [], arr2 = []) => {
   let res = [];
   res = arr1.map(obj => {
      const index = arr2.findIndex(el => el["id"] == obj["id"]);
      const { address } = index !== -1 ? arr2[index] : {};
      return {
         ...obj,
         address
      };
   });
   return res;
};
console.log(mergeArrays(arr1, arr2));

出力

そして、コンソールの出力は-

になります
[
   { id: '123', name: 'name 1', address: 'address 1' },
   { id: '456', name: 'name 2', address: 'address 2' }
]

  1. 2つのJavaScriptオブジェクトをマージする方法は?

    以下は、2つのJavaScriptオブジェクトをマージするコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &nbs

  2. JavaScriptで2つの配列を乗算する方法は?

    以下は、JavaScriptで2つの配列を乗算するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>   &