我遇到了一个问题,我希望使用现有的数组,并使用for循环更新它的一个属性.我希望外部id和数组内的id匹配,例如:a&;a、b&;b、c&;c.然而,当我打印出最后一个数组时,所有内部id都设置为c.
我不明白为什么会发生这种事?
编辑:添加了预期yields
My Code个
const accounts = [{
"id": 1,
"currency": "USD"
}];
const alphaId = ['a', 'b', 'c'];
let finalArr = [];
for (index in alphaId) {
let newAccount = {};
newAccount.id = alphaId[index];
newAccount.accounts = accounts;
newAccount.accounts.forEach(acc => {
acc.id = alphaId[index];
});
finalArr.push(newAccount);
}
Print Out个
[
{
"id": "a",
"accounts": [
{
"id": "c",
"currency": "USD"
}
]
},
{
"id": "b",
"accounts": [
{
"id": "c",
"currency": "USD"
}
]
},
{
"id": "c",
"accounts": [
{
"id": "c",
"currency": "USD"
}
]
}
]
Expected Output个
[
{
"id": "a",
"accounts": [
{
"id": "a",
"currency": "USD"
}
]
},
{
"id": "b",
"accounts": [
{
"id": "b",
"currency": "USD"
}
]
},
{
"id": "c",
"accounts": [
{
"id": "c",
"currency": "USD"
}
]
}
]