JavaScript 中数组求和

2025 年 2 月 16 日 | 阅读 6 分钟

数组是一个对象,用于使用单个变量名存储不同类型数据的集合。

有时,我们需要对数组进行求和。在本文中,我们将学习如何在 JavaScript 中对数组进行求和。虽然 JavaScript 没有内置的求和方法,但有多种方法可供我们使用。

以下是在 JavaScript 中对数组求和的方法:

  • reduce() 方法
  • forEach() 方法
  • for 循环
  • for...of 循环
  • Lodash _.sum() 方法
  • 递归
  • map() 和 reduce() 方法

让我们通过演示一个接一个地理解这些方法。

reduce() 方法

此方法在 ECMAScript 6 中引入。

语法

在上面的语法中,以下是下面讨论的参数:

function(total, currentValue, currentIndex, arr):这是一个为数组中的每个元素执行的函数。

total:这是用于存储总结果的参数。它包含 reduce() 方法最后一次调用的返回值。这是一个强制性参数,意味着我们必须传递它。

current_value:它表示当前元素的值,即正在对其执行 reduce() 方法的元素。它也是一个强制性参数。

current_index:它表示正在对其执行 reduce() 方法的当前索引的值。如果定义了初始值,则 current_index 的值为 0,否则值为 1。这是一个可选参数。

initial_value:它表示传递给函数的初始值。这是一个可选参数。如果未定义初始值,则数组的第一个元素被视为开始时的总值,并且该值不会被视为 current_value。

演示

我们将创建一个程序,在以下演示中使用 reduce() 方法对数组进行求和。

代码

输出

我们可以在下面的输出中看到使用 reduce() 方法计算的数组总和。

Sum of Array in JavaScript

forEach() 方法

此方法用于为数组中的每个元素调用一个函数,用于计算 JavaScript 中数组的总和。

语法

在上面的语法中,以下是下面讨论的参数:

function(current_value, index, arr):这是为数组中的每个元素运行的函数。这是必需的值。

current_value:这是当前元素的值。这是必需的值。

current_index:它定义了当前元素的索引值。这是一个可选值。

arr:这是当前元素的数组。这是一个可选值。

thisValue:这是传递给函数的值,以便将其用作“this”值。这是一个可选值。如果未指定,则设置为默认值 undefined。

演示

我们将构建一个程序,使用 forEach() 方法对数组进行求和。

代码

输出

我们可以在下面的输出中看到使用 forEach() 方法计算的数组总和。

Sum of Array in JavaScript

for 循环

我们可以使用 for 循环计算数组的总和,该循环用于迭代从 0 到数组最后一个索引的数组。

语法

演示

我们将构建一个程序,使用 for 循环对数组进行求和。

代码

输出

这是输出,我们可以看到使用 for 循环计算的数组总和。

Sum of Array in JavaScript

for...of 循环

此循环用于遍历可迭代对象的值。

语法

上面讨论了以下语法:

variable:它可以使用 const、var 或 let 关键字定义。每次迭代后,下一个迭代的值将赋给该变量。

iterable:这是一个包含可迭代属性的对象。

演示

我们将创建一个代码,使用 for...of 循环对数组进行求和。

代码

输出

这是输出,我们可以看到使用 for...of 循环计算的数组总和。

Sum of Array in JavaScript

Lodash _.sum() 方法

Lodash 是 JavaScript 中的一个内置库,其中包含一个名为 ".sum()" 的方法,我们可以使用它来添加数组中的数字。

演示

我们将创建一个程序,使用 Lodash .sum() 方法对数组进行求和。

代码

输出

这是输出,我们可以看到使用 Lodash .sum() 方法计算的数组总和。

Sum of Array in JavaScript

递归

这是一个函数,它一遍又一遍地调用自身,直到覆盖数组中的每个元素。

演示

我们将创建一个程序,使用递归对数组进行求和。

代码

输出

这是输出,我们可以看到使用递归计算的数组总和。

Sum of Array in JavaScript

map() 和 reduce() 方法

map() 和 reduce() 方法都用于聚合数组。map() 方法用于通过对每个数组元素使用回调函数来创建一个新数组,而 reduce() 方法用于通过使用回调函数将新数组归约到一个值。

演示

我们将创建一个程序,使用递归对数组进行求和。

代码

输出

这是输出,我们可以看到使用 map() 和 reduce() 方法计算的数组总和。

Sum of Array in JavaScript

结论

在上面的文章中,我们研究了如何在 JavaScript 中计算数组的总和。我们看到了不同的方法和示例,例如 reduce() 方法、forEach() 方法、for 循环、for...of 循环、Lodash _.sum() 方法、递归、map() 和 reduce() 方法。