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

初学者友好的JS代码实现数组指定数字筛选求和

适合初学者的JavaScript数组筛选求和实现

给定数组:

const arr = [1, 1, 3, 3, 3, 2, 2, 1, 3, 3, 2, 3, 4, 2, 3, 4, 4, 2, 1, 3, 2, 4, 3, 2];

需求:分别统计数组中所有1、2、3、4的总和,再计算这四个总和的总分。

下面是最适合新手理解的代码,用基础循环和条件判断实现:

// 定义目标数组
const arr = [1, 1, 3, 3, 3, 2, 2, 1, 3, 3, 2, 3, 4, 2, 3, 4, 4, 2, 1, 3, 2, 4, 3, 2];

// 初始化四个分数变量,初始值设为0(方便后续累加)
let scoreN = 0;
let scoreST = 0;
let scoreO = 0;
let scoreAA = 0;

// 遍历数组中的每一个元素
for (let i = 0; i < arr.length; i++) {
  const currentNum = arr[i];
  // 判断当前元素属于哪一类,对应累加数值
  if (currentNum === 1) {
    scoreN += currentNum;
  } else if (currentNum === 2) {
    scoreST += currentNum;
  } else if (currentNum === 3) {
    scoreO += currentNum;
  } else if (currentNum === 4) {
    scoreAA += currentNum;
  }
}

// 计算总分
const totalScore = scoreN + scoreST + scoreO + scoreAA;

// 打印结果,方便验证
console.log("所有1的总和:", scoreN);
console.log("所有2的总和:", scoreST);
console.log("所有3的总和:", scoreO);
console.log("所有4的总和:", scoreAA);
console.log("总分:", totalScore);

代码说明

  • 先把目标数组存入变量arr,方便后续操作;
  • 给四个分数变量设初始值0,否则无法进行累加计算;
  • 用for循环逐个遍历数组元素,新手能直观看到每一步的遍历过程;
  • 用if-else判断当前元素的类型,直接将元素值加到对应分数变量中;
  • 最后将四个分数相加得到总分,通过console.log输出结果查看。

运行代码后会得到:

  • scoreN = 4(数组中有4个1,1×4=4)
  • scoreST = 14(7个2,2×7=14)
  • scoreO = 30(10个3,3×10=30)
  • scoreAA = 16(4个4,4×4=16)
  • totalScore = 64

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 18:37:33