Sum没有返回预期的结果
var cid = [["PENNY", 2], ["NICKEL", 2], ["DIME", 0], ["QUARTER", 0], ["ONE", 0], ["FIVE", 0], ["TEN", 20], ["TWENTY", 60], ["ONE HUNDRED", 100]];
var cur = {"PENNY": 0.01, "NICKEL": 0.05, "DIME": 0.1, "QUARTER": 0.25, "ONE": 1, "FIVE": 5, "TEN": 10, "TWENTY": 20, "ONE-HUNDRED":100 }
var sum = 0;
for (var i = 0; i < cur.length; i++) {
sum += cur[cid[i][0]] * cid[i][1]
}
console.log(sum);
回答
有2个问题。
- 输入错误
cid。应该是“一百” - 使用
Object.keys(cur).length代替cur.length。参考Object.keys()
var cid = [["PENNY", 2], ["NICKEL", 2], ["DIME", 0], ["QUARTER", 0], ["ONE", 0], ["FIVE", 0], ["TEN", 20], ["TWENTY", 60], ["ONE-HUNDRED", 100]];
var cur = {"PENNY": 0.01, "NICKEL": 0.05, "DIME": 0.1, "QUARTER": 0.25, "ONE": 1, "FIVE": 5, "TEN": 10, "TWENTY": 20, "ONE-HUNDRED":100 }
var sum = 0;
for (var i = 0; i < Object.keys(cur).length; i++) {
sum += cur[cid[i][0]] * cid[i][1]
}
console.log(sum);