実現したいこと
連想配列の配列employees
から、「削除キーを指定」して、firstname
とage
を削除したいと思っています。
JavaScript
1const employees = [ 2 { firstname: 'John', lastname: 'Smith', age: 20 }, 3 { firstname: 'John', lastname: 'Doe', age: 10 } 4];
つまり目的の値はこちらです。
JavaScript
1[ 2 { lastname: 'Smith' }, 3 { lastname: 'Doe' } 4]
試したコードA
以下のmap
とdelete
では実現できませんでした。
JavaScript
1const result1 = employees.map(employee => { 2 delete employee.firstname; 3 delete employee.age 4}); 5console.log(result1);
試したコードB
以下のforEach
だと実現できたのですが、「削除キーを指定」という方法ではなくなってしまいます。
JavaScript
1let result2 = []; 2employees.forEach((employee) => { 3 result2.push(employee.lastname) 4}); 5console.log(result2);
試したコードC
以下のようにincludes
で探す方法もダメでした。
JavaScript
1const result3 = employees.map(employee => { 2 if( Object.keys(employee).includes('firstname') ){ 3 delete employee.firstname; 4 } 5 if( Object.keys(employee).includes('age') ){ 6 delete employee.age; 7 } 8}); 9console.log(result3 );
「削除キーを指定」という方法でresult2
と同じ結果を得たいのですが、どのような書き方で実現できますでしょうか?

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/03/14 07:40