水果的价格在对象prices
中定义,而水果的库存数量在stocks
中。
问题:您如何找到所有水果的总价值?使用for.. in
,我可以访问stocks
中的值,但是访问prices
的值时遇到问题。
prices = {'appleusd': 1, 'orangeusd': 10};
stocks = {'apple': 100, 'orange': 20};
totalValue = 0;
for (stock in stocks){
totalValue += stocks[stock] + prices[stock+'usd'];
}
console.log(totalValue);
最佳答案
由于在prices
和stocks
中找到的密钥不同,因此必须将usd
附加到库存密钥上才能获得正确的价格。然后,您需要将价格乘以库存数量,并在每次迭代中将结果添加到totalValue
中:
prices = {'appleusd': 1, 'orangeusd': 10};
stocks = {'apple': 100, 'orange': 20};
totalValue = 0;
for (var stock in stocks){
totalValue += stocks[stock] * prices[stock + 'usd'];
}
console.log(totalValue); // 300
编辑:看来,自从我第一次发布此内容以来,您已经编辑了代码以解决我在这里提出的一些问题。唯一剩下的错误是您的代码将两个值相加而不是相乘。