前提
TypeScriptで連想配列を操作しようと考えています。
複数の連想配列(今回は2つ)を結合したいと考えております。
実現したいこと
objHeaderとobjBodyをgroup()で結合して
resultに変換をしたいです。
TypeScript
1objHeader: any[] = [ 2 { rank: '1位', point: 40, group: 1 }, 3 { rank: '2位', point: 20, group: 2 }, 4 ]; 5 6 objBody: any[] = [ 7 { rank: '1位', point: 40, group: 1 }, 8 { rank: '2位', point: 30, group: 1 }, 9 { rank: '3位', point: 20, group: 1 }, 10 { rank: '1位', point: 50, group: 2 }, 11 { rank: '2位', point: 20, group: 2 }, 12 { rank: '3位', point: 10, group: 2 }, 13 ]; 14 15result: any[] = [ 16 { 17 rank: '1位', 18 point: 40, 19 group: 1, 20 data: [ 21 { rank: '1位', point: 40, group: 1 }, 22 { rank: '2位', point: 30, group: 1 }, 23 { rank: '3位', point: 20, group: 1 }, 24 ], 25 }, 26 { 27 rank: '2位', 28 point: 50, 29 gr: 2, 30 data: [ 31 { rank: '1位', point: 50, group: 2 }, 32 { rank: '2位', point: 20, group: 2 }, 33 { rank: '3位', point: 10, group: 2 }, 34 ], 35 },
試したこと
map関数を使用して作ろうと考えましたが、上手くいきませんでした。。。
Typescript
1 this.objBody.map((value: any) => { 2 this.objHeader.map((value2: any) => { 3 if (value.group === value2.group) { 4 value2.data = value 5 } 6 }); 7 });

回答2件
あなたの回答
tips
プレビュー