JavaScriptでオブジェクトの配列内のオブジェクトを操作する
このようなオブジェクトの2つの配列があるとします-
const arr1 = [ {id:'124',name:'qqq'}, {id:'589',name:'www'}, {id:'45',name:'eee'}, {id:'567',name:'rrr'} ]; const arr2 = [ {id:'124',name:'ttt'}, {id:'45',name:'yyy'} ];>
このような2つのオブジェクトを取り込むJavaScript関数を作成する必要があります。この関数は、最初の配列で、2番目の配列に存在するのと同じ「id」プロパティを持つオブジェクトを検索する必要があります。
次に、これらのオブジェクトの「name」プロパティを、2番目の配列のオブジェクトの対応する「name」プロパティに置き換える必要があります。
したがって、上記の配列の場合、出力は次のようになります-
const output = [ {id:'124',name:'ttt'}, {id:'589',name:'www'}, {id:'45',name:'yyy'}, {id:'567',name:'rrr'} ];
例
このためのコードは-
になりますconst arr1 = [ {id:'124',name:'qqq'}, {id:'589',name:'www'}, {id:'45',name:'eee'}, {id:'567',name:'rrr'} ]; const arr2 = [ {id:'124',name:'ttt'}, {id:'45',name:'yyy'} ]; const replaceByOther = (arr1, arr2) => { for(let i = 0; i < arr1.length; i++){ const el = arr1[i]; const index = arr2.findIndex(elm => el['id'] === elm['id']); if(index === -1){ continue; }; else['name'] = arr2[index]['name']; }; }; replaceByOther(arr1, arr2); console.log(arr1);
出力
そして、コンソールの出力は-
になります[ { id: '124', name: 'ttt' }, { id: '589', name: 'www' }, { id: '45', name: 'yyy' }, { id: '567', name: 'rrr' } ]
-
JavaScriptでオブジェクトプロパティ名の配列を置き換える
以下は、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&g
-
JavaScriptでツリー化するオブジェクトのフラット配列
このようなオブジェクトの配列があるとします- const arr = [ { id: '1', name: 'name 1', parentId: null }, { id: '2', name: 'name 2', parentId: null }, { id: '2_1', name: 'name 2_1', parentId: '2' }, { id: '2_2