我需要编写一个接受 2 个参数的函数,第一个参数是 <li>
的列表元素,第二个参数是一个对象。对象是产品列表及其价格。所有<li>
元素将包含包含产品名称的文本。该函数应检查提到的每个产品的价格,计算并返回总价。
例子:
<ul>
<li>oreos<li/>
<li>milk<li/>
<ul/>
let products = {
oreos: 20,
milk: 17,
bread: 12,
doritos: 10
}
我尝试使用 for in/of 循环遍历产品对象并将其与
<li>
匹配。使用 .innerText
但我不确定如何去做。请帮忙
最佳答案
您可以做的是,您可以使用以下功能:
let totalPrice = (priceList, products) => {
return products.reduce((total, elem) => {
total += priceList[elem.innerText];
return total;
}, 0)
}
此函数使用 Array.reduce 迭代产品列表并添加产品价格列表并返回总价。
您应该结帐 Array.reduce()为了更清楚。
关于javascript - 如何计算和添加对象中键的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58287718/