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

Google Apps Script:如何对二维数组中的元素求和?

解决Google Apps Script二维数组求和问题

你的核心问题是二维数组的元素都是子数组,需要先把它转换成一维数组,再用reduce()求和。以下是具体实现:

完整代码示例

function calculateArraySum() {
  // 模拟从Google表格获取的二维数组
  const sheetData = [ [-4.0], [-1.0], [4.0], [2.0], [1.0], [3.0] ];
  
  // 第一步:扁平化二维数组(两种可选方法)
  // 方法1:手动提取每个子数组的第一个元素(兼容性更强)
  const flatData = sheetData.map(item => item[0]);
  // 方法2:用ES6的flat()方法直接扁平化(更简洁)
  // const flatData = sheetData.flat();
  
  // 第二步:对一维数组求和
  const totalSum = flatData.reduce((acc, curr) => acc + curr, 0);
  
  Logger.log(totalSum); // 输出结果:5.0
}

关键步骤说明

  • 扁平化数组:从Google表格获取的单列数据默认是二维数组(每个单元格值被包裹在子数组里),必须先提取每个子数组中的数值,才能进行求和计算。
  • reduce求和的初始值:reduce()的第二个参数0是累加器的初始值,必须加上——如果数组为空或者第一个元素是负数,不加初始值可能导致计算错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 08:52:44