【发布时间】:2019-12-29 17:39:18
【问题描述】:
我正在制作费用跟踪器的基本代码(没有 ui,只有初始脚本),但我在尝试控制台时遇到了问题。记录用户总花费的总和,我的代码只使花费的钱翻了一番对于每个购买的物品,所以我决定在这里寻求帮助。
代码:
//initial code
const account = {
name: 'user',
expenses: [],
addExpense: function(description, amount) {
account.expenses.push({
description: description,
amount: amount
});
},
getAccountSummary: function() {
let expenses = account.expenses;
for (let i = 0; i < expenses.length; i++ ) {
let value = expenses[i].amount + expenses[i].amount;
console.log(value);
}
}
}
//output calls
account.addExpense('Milk', 8);
account.addExpense('Netflix', 30);
account.addExpense('Steam summer sale', 26);
account.addExpense('Coffee', 4);
console.log(account.getAccountSummary());
代码总是在下面记录这个值:
16
60
52
8
实际上是输入值的两倍(8、30、26、4)。
我正在寻找的输出是所有这些值的总和,在这种情况下:
68
希望我的问题很清楚。
【问题讨论】:
-
这会使价值翻倍。让价值=费用[i].amount +费用[i].amount;你可能想要“价值+=费用[i].amount;”之类的东西
标签: javascript arrays object for-loop foreach