javascript - 从键数组中获取对象的值
问题描述
有一个对象保存杂货店的商品和价格:
let groceryStore = {
'Banana' : .25,
'Apple' : .30,
'Lettuce' : 1.20,
'Onion' : .15,
'Celery' : 1.15,
'Garlic' : 1.00,
'Tomato' : .50
}
你有一个键数组:
let groceryList = ['Tomato', 'Lettuce', 'Garlic', 'Onion']
我现在需要找到我的数组(groceryList)中键的所有值的总和。
解决方案
要获取一个数组,并将其减少为另一个值,您通常可以使用恰当命名的Array.reduce()
. 通常要对数字数组求和,您可以减少数组,并将每个数字添加到累加器中(sum
在示例中):
arrayOfNumbers.reduce((sum, num) => sum + num, 0)
在您的情况下,减少键数组,并使用以下对象从对象中获取值key
:
const groceryStore = {
'Banana': .25,
'Apple': .30,
'Lettuce': 1.20,
'Onion': .15,
'Celery': 1.15,
'Garlic': 1.00,
'Tomato': .50
}
const groceryList = ['Tomato', 'Lettuce', 'Garlic', 'Onion']
const result = groceryList.reduce((sum, key) => sum + groceryStore[key], 0)
console.log(result)
推荐阅读
- regex - 多个匹配正则表达式正前瞻
- python - 在python中将垂直表格转换为水平表格(展平表格)
- octobercms - 如何更改rainlab.user::mail.invite 以获得激活链接
- python-3.x - Jupyter 的选项卡自动完成功能不适用于 sklearn、numpy、seaborn、pandas 和 matplotlib 等多个库
- keras - 在 Keras 中,在我自己的模型上使用 include_top= False 会删除所有最后一个密集层,我可以定义模型的“顶部”吗?
- asp.net - 无法让 ASP.NET/IIS 使用自定义缓存控制设置来提供 .js 文件
- laravel - Laravel 网站域名将转到 public/publc url
- django - django 具有相同外键的多个模型
- python - 使用 psycopg2 在 PostgreSQL 中使用密码创建用户时出错
- sql - 日期过滤器返回无效字符错误