You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript如何对二维数组子数组最后一个元素求和并统计商品总数

实现方案

你可以直接用JS内置的reduce方法一次遍历拿到两个统计值,不需要手动写循环逻辑:

// 一次遍历同时计算两个目标值
const { totalLastField, totalQuantity } = products.reduce((acc, cur) => {
  acc.totalLastField += cur.at(-1); // 取子数组最后一个字段累加,也可以直接写cur[4]
  acc.totalQuantity += cur[3]; // 子数组第4个字段为商品数量
  return acc;
}, { totalLastField: 0, totalQuantity: 0 });

按你给出的示例数组计算可得:

  • 最后一个字段总和为 239
  • 商品总数量为 474

关于是否需要循环的说明

如果你说的「循环」指手动编写for/while迭代控制逻辑,那不需要,用JS内置的数组高阶方法就能完成需求。但不管用高阶方法还是手动写循环,底层本质都会遍历整个数组,只是高阶方法帮你封装了迭代的控制逻辑而已。

如果你偏好更直白、兼容性更好的写法,也可以用基础for循环实现:

let totalLastField = 0, totalQuantity = 0;
for (let i = 0; i < products.length; i++) {
  const item = products[i];
  totalLastField += item[4];
  totalQuantity += item[3];
}

内容的提问来源于stack exchange,提问作者Avmeade

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 20:36:04