keyとvalue配列からオブジェクトを作るには、
forで順番に入れていくしか無いのでしょうか?
もっと簡潔に書く方法はありますか?
javascript
1let key=["name","address","tel"]; 2let valuelist=[ 3 ["田中","日本","000000000"], 4 ["佐藤","日本","000000000"]]; 5 6let objlist=[]; 7for(i=0; i<2; i++){ 8 let obj=[]; 9 obj[key[0]] = valuelist[i][0]; 10 obj[key[1]] = valuelist[i][1]; 11 obj[key[2]] = valuelist[i][2]; 12 objlist.push(obj); 13}
コードに全角記号が混じっているので、修正されてはいかがでしょう。
質問のコードを修正されたようですが、それだと、
obj[key[0]] = 〜...の時点でエラーが起きます。
なぜなら、for内のローカル変数objは、配列として宣言してるのに、
オブジェクトとしての代入をしようとしているからです。
スマホで質問されてるようですが、
PCにて、実際に動かしながらにした方がいいかと。
(出先なのかとは思いますが)
コードが動いている上での、もっとこうしたい、という質問なので、恐縮ながらアドバイスさせていただきました。
この質問の投稿者はすでに退会しているため、質問者からの返信がない点にご留意ください。
回答3件
この質問の投稿者はすでに退会しているため、質問者からの返信やベストアンサーの選定がない点にご留意ください。
あなたの回答
tips
プレビュー