javascript - 如何计算和添加对象中键的值

标签 javascript

我需要编写一个接受 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/

相关文章:

javascript - CSS- 扩展子元素但保持父元素的尺寸不变。创建下拉菜单

javascript - Express res.render 没有渲染页面

javascript - 获取 Parse Javascript Facebook 用户登录和注册以使用 jquery 站点的问题

javascript - 如何删除 HTML 元素的所有 CSS 类?

javascript - 选择.js : automatically select freshly created value in ajax callback

javascript - Google 趋势不再显示 GEO_CHART_o_o

javascript - 如何将动画添加到 D3 自定义 radio

javascript - 停止/启动一个 self 回复的功能

javascript - Express res.locals 和 pug 未按预期工作

javascript - Var 无法从 document.getElementsByClassName() 获取元素