You need to enable JavaScript to run this app. 如何编写group(n, arr)函数实现数组每n项分组求和?
优惠活动
大模型
产品
解决方案
定价
更多

如何编写group(n, arr)函数实现数组每n项分组求和?

group(n, arr) 功能实现方案

实现规则对齐

先明确需要覆盖的所有需求点:

  • 将输入数字数组按照每n个元素为一组的规则切分
  • 分别计算每个分组内的元素累加和
  • 若最后一组元素数量不足n,直接对剩余全部元素求和,不做截断、补值处理
  • 最终返回所有分组和组成的新数组

通用代码实现(JavaScript版本)

function group(n, arr) {
  const res = [];
  // 以固定步长n遍历原数组
  for (let startIndex = 0; startIndex < arr.length; startIndex += n) {
    // 截取当前起点开始的n个元素,计算组内总和
    const currentGroup = arr.slice(startIndex, startIndex + n);
    const groupSum = currentGroup.reduce((sum, num) => sum + num, 0);
    res.push(groupSum);
  }
  return res;
}

效果验证

拿需求中的测试用例验证:

执行调用:group(2, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
返回结果:[3, 7, 11, 15, 19, 11],完全匹配预期输出

边界场景说明

  • 当n=1时,每个元素单独成组,返回值与原数组元素完全一致
  • 当原数组长度小于n时,直接返回包含全数组总和的单元素数组
  • 生产环境使用时可补充基础校验:确保n为正整数、传入数组为纯数字类型,避免出现切片异常、计算结果为NaN等问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.11 16:15:07