📜  如何仅对数组中的偶数求和 (1)

📅  最后修改于: 2023-12-03 15:23:46.231000             🧑  作者: Mango

如何仅对数组中的偶数求和

有时候,我们需要对一个数组中的偶数进行求和操作。本文将介绍几种方法来实现这个功能。

方法一:使用 for 循环

可以使用 for 循环来遍历数组,然后判断数组元素是否为偶数,如果是偶数则将它们相加。以下是一个示例代码:

function sumEvenNumbers(arr) {
  let sum = 0;
  for(let i = 0; i < arr.length; i++) {
    if(arr[i] % 2 === 0) {
      sum += arr[i];
    }
  }
  return sum;
}

const arr = [1, 2, 3, 4, 5, 6];
console.log(sumEvenNumbers(arr)); // 12
方法二:使用 reduce() 方法

另一个实现方式是使用数组的 reduce() 方法。这个方法可以把数组中的所有元素迭代为一个单一的值。以下是一个示例代码:

function sumEvenNumbers(arr) {
  return arr.reduce((acc, curr) => curr % 2 === 0 ? acc + curr : acc, 0);
}

const arr = [1, 2, 3, 4, 5, 6];
console.log(sumEvenNumbers(arr)); // 12
方法三:使用 filter() 和 reduce() 方法结合

第三种方法是使用数组的 filter() 方法来筛选出偶数元素,然后使用 reduce() 方法把它们相加。以下是一个示例代码:

function sumEvenNumbers(arr) {
  return arr.filter(num => num % 2 === 0).reduce((acc, curr) => acc + curr, 0);
}

const arr = [1, 2, 3, 4, 5, 6];
console.log(sumEvenNumbers(arr)); // 12
总结

本文介绍了三种方法来仅对数组中的偶数求和。根据具体情况选择相应的方法可以提高代码的效率。我们希望本文能够对大家有所帮助。