javascript ES5中的数组的迭代方法和归并方法

1.背景

    ES5为数组新增了几个方法,包括5个迭代方法和2个归并方法,使用这些方法可以很优雅地写一些数组相关的代码。现在简单介绍一下这几个方法。

2.迭代方法

    ES5为数组新增了5个迭代方法:

·every

·some

·filter

·map

·forEach

这几个方法有一些共同点:

a) 它们的参数都是一个function

b) 它们的参数function的参数都是一样的:(item, index, array) array就是调用这个方法的数组实例。

那么我们只需要知道各个方法的含义和返回值这两个指标就可以知道它们的用法了,下面一一介绍

every 返回值:Boolean;含义:如果数组中每个元素均满足条件,则返回true,否则返回false。

some 返回值:Boolean;含义:如果数组中有某个元素满足条件,则返回true,否则返回false。

filter 返回值:Array;含义:返回原数组中满足条件的元素组成的新数组。

map 返回值:Array;含义:返回原数组的每一项经过map参数指定的函数处理后的新数组。

forEach 返回值:没有返回值;含义:对数组中的每一项应用forEach参数指定的函数。

3.归并方法

    ES5为数组增加了2个归并方法:

·reduce

·reduceRight

    它们的含义是相同的,都是对数组元素归并处理,唯一不同的地方是reduce是从左到右,reduceRight是从右到左。

    下面介绍一下reduce方法的用法。

    reduce会迭代数组的所有项,然后构建一个最终返回值。它的参数有两个,第一个参数是一个function,这个function的参数列表为(pre, cur, index, arr),其中pre为上次迭代结果,cur为当前项。第二个参数是初始值。如果不传这个初始值,那么第一次迭代的pre是数组的第一项,cur是数组的第二项。如果传入了这个初始值,那么第一次迭代的pre是这个初始值,cur是数组的第一项

    举例如下:

    [1, 2, 3, 4, 5].reduce(function(pre, cur, index, array) {return pre + cur}); // 15

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值