修正方法:コード2出力パスワードは同じですか?ルーピング固有の値 - nodejs
なぜコード2のパスワードが同じですか?
コード1:
var arr = [
{ email: '', role: 'normal', password: '' },
{ email: '', role: 'normal', password: '' },
{ email: '', role: 'normal', password: '' },
{ email: '', role: 'normal', password: '' },
{ email: '', role: 'normal', password: '' },
{ email: '', role: 'normal', password: '' }
]
arr.forEach(o => { o.password = Math.random() })
output: [{ email: '', role: 'normal', password: 0.16326031488429638 },
{ email: '', role: 'normal', password: 0.4941354999549721 },
{ email: '', role: 'normal', password: 0.6802056630925 },
{ email: '', role: 'normal', password: 0.5038916232454755 },
{ email: '', role: 'normal', password: 0.5232000715886489 },
{ email: '', role: 'normal', password: 0.1599782533612224 }]
コード2:
var obj = {
email: '1',
role: 'normal',
password: ''
}, array = []
for (let i = 0; i < 6; i++) {
array.push(function() {
obj.password = Math.random()
return obj
})
}
出力:
[{メール: '1'、役割:「正常'、password:0.4311454570811686} 、
{メール: '1'、役割: '正常'、パスワード:0.4311454570811686}、
{メール: '1'、役割: '正常'、パスワード:0.4311454570811686}、
{電子メール: '1'、役割: '標準'、パスワード:0.4311454570811686}、
{Eメール: '1'、役割: '標準'、パスワード:0.4311454570811686}、
{Eメール: '1'、ロール:「通常」、パスワード:0.4311454570811686}
この質問を読みやすいようにしてください。あなたが何を求めているのかは分かりません。 –
待機中................... – ZERO