跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

JavaScript中的reduce()如何使用

reduce()是将数组数据的每个元素累积为一个值的最佳方法,所以本篇文章我们就来详细介绍一下javascript中reduce()的使用方法。 下面我们来看具体的内容。 假设我们有一个这样的数组:
var numbers = [1,2,3,4,5,6,7,8,9]; var strings = ['苹果','香蕉','梨子','葡萄','荔枝'];
在这个例子中,我们准备了一个存储数字数据的数组和一个存储字符串数据的数组。 立即学习 “ Java免费学习笔记(深入) ”; 使用reduce()最明显的方法是计算存储在这种数组中的所有值的值。 如果是数值,则可以计算求和值,如果是字符,则可以将单个字符串连接在一起。 下面我们来看 如何使用reduce()? reduce()可以在目标数组上执行任意函数。
数组.reduce(function(累积值, 元素) { })
第一个参数的“累积值”表示通过按顺序处理数组元素获得的值。 第二个参数“元素”表示当前处理的数组元素。 在该函数中使用“return”,通过返回任意处理,结果保留在累积值中,最后可以获得一个值。 我们来看具体的示例 对数组的每个元素求和 代码如下
var numbers = [1,2,3,4,5,6,7,8,9]; var result = numbers.reduce(function(a, b) { return a + b; }) console.log(result);
运行结果如下 在此示例中,对存储1到9的数字的数组执行reduce()。 在函数中,您可以看到累加的值和每个元素都被简单地添加。 在第一次处理中变为“1 + 2”,将和存储在累积值中,并在下一次处理中执行“3 + 3”。 通过这样做,运行结果输出所有值相加为“45”。 最后我们需要说明一点: reduce()的函数中使用“break”中断处理的方法是不可以的,因此作为替代方案,存在利用数组的索引号的中断方法,我们下面来简单看一下。 实际上,reduce()的函数中最多可以有四个参数。
配列.reduce(function(累积值, 元素, 索引号, 数组) { })
第三个参数“索引号”表示当前处理的数组的索引号。 第四个参数“数组”表示当前正在处理的数组本身。 利用这个参数,可以如下来实现中断过程!
var numbers = [1,2,3,4,5,6,7,8,9]; var result = numbers.reduce(function(a, b, index, arr) { if(index >= 3) arr.splice(1); return a + b; }); console.log(result);
运行结果如下 请注意reduce()函数中的IF语句! 通过在条件表达式中描述 “index> = 3”,当它成为数组的第三个索引号时,可以执行任意处理。 该过程变为“arr.splice(1)”,并删除第三个索引之后的所有数组元素。 因此,reduce()的处理将结束,因此您可以执行与“break”相同的功能。

相关文章