前提・実現したいこと
JavaScript初心者です。以下の様な配列に対し,map関数を利用して特定の値を持つ場合のみ,if文を用いて別の処理を実行したいと考えております。
JS
1var things = [ 2 {a: 1, b: 2, c: true}, 3 {a: 2, b: 100, c: false}, 4 {a: 3, b: 200, c: true} 5 ];
最終的には,以下の様なaが1の場合にみwidthを追加した出力をしたいと考えております。
Array [Object { label: "a", key: "a", width: 150 }, Object { label: "b", key: "b"}, Object { label: "c", key: "c"}]
発生している問題・エラーメッセージ
Error: Unexpected token 'if'
下のソースコードに問題があるのですが,if文が認識されません。
該当のソースコード
JS
1var tempCol1 = Object.keys(things[0]).map(x=>( 2 if ( x === 1 ){ 3 return {label:x, key:x, width: 150}; 4 } 5 else { 6 return {label:x, key:x}; 7 } 8));
試したこと
以下の処理であれば,一括して同じ処理が実行される事が確認できたのですが,mapの中にif文がうまく反映できませんでした。
JS
1var tempCol = Object.keys(things[0]).map(x=>({label:x, key:x, width: 150}));
基本的な事だとは思うのですが,ご指摘頂けますと幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/21 15:30