如何计算JavaScript嵌套对象中数组内quantity属性的总和?
计算购物车中商品数量总和的几种方法
给定你的cart对象,要计算所有items的quantity属性总和,这里有两种简单易懂的实现方式:
方法一:使用forEach循环遍历累加
先初始化一个变量存储总数量,然后遍历items数组,逐个累加每个商品的quantity值:
let totalQuantity = 0; cart.items.forEach(item => { totalQuantity += item.quantity; }); console.log(totalQuantity); // 输出17
- 步骤说明:
- 定义
totalQuantity并初始化为0,用来保存累加后的总数量 - 调用数组的
forEach方法遍历cart.items,每次循环将当前商品的quantity加到totalQuantity中 - 最后打印结果即可得到总和
- 定义
方法二:使用reduce方法(更简洁)
数组的reduce方法专门用于将数组元素合并为一个值,非常适合做累加计算:
const totalQuantity = cart.items.reduce((sum, item) => sum + item.quantity, 0); console.log(totalQuantity); // 输出17
- 步骤说明:
reduce接收两个参数:回调函数和初始值(这里初始值设为0)- 回调函数中的
sum是累加的中间结果,item是当前遍历的商品对象 - 每次迭代时,将
sum与当前商品的quantity相加,最终返回累加后的总数量
内容的提问来源于stack exchange,提问作者Titus Williams
相关产品推荐
相关产品推荐

