オブジェクトを配列に追加しようとしていますが、各配列にはemailやnameのような複数のフィールドがあります。次に、アレイの外観を示します。別の配列に追加したいです。JavaScriptでの繰り返し処理
result = [
{
"email": "[email protected]",
"firstName": "abc"
},
{
"email": "[email protected]",
"firstName": "def"
}
]
以下は、私が適用しようとしているロジックです。
var userEmail = ""
var users = [];
var newUser = {'email' : "", 'name' : "", 'type' : 'to'};
for(var i=0; i<result.length; i++){
userEmail = result[i].email
//console.log(userEmail);
newUser.email = result[i].email;
newUser.name = result[i].firstName;
users.push(newUser);
}
私の予想出力はこの
users = [ { email: '[email protected]', name: 'abc' },
{ email: '[email protected]', name: 'def' } ]
である。しかし、私は取得しています出力は、私が間違っているつもりです。この
[ { email: '[email protected]', name: 'abc' },
{ email: '[email protected]', name: 'abc' } ]
のですか?
を、私はそれで各反復 – puneeth8994
で新しいオブジェクトを作成するにはどうすればよいです!私は、これ以上の記述が必要かもしれないと思います。 – Vikrant
または[destructuring](http://www.2ality.com/2015/01/es6-destructuring.html)を使用して: 'result.map(({email、firstName})=>({email、name:firstName })) '。あるフォームから別のフォームにデータを変換する際に、エラーの発生を避けるために、高次関数( 'map'、' filter'、 'reduce'など)を使うのが一般的です。 – dotcs