filter
函数
filter
中的回调函数有一个要求:必须返回一个boolean
值
true
当返回true
时,函数内部会自动将这次回调的n加入到新的数组中
flase
当返回false
时,函数内部会过滤掉这次的n
如下图,数组里有七个数,filter
的回调函数,每遍历一次,就会执行一次回调函数,所以会执行七次。
过滤出小于100的数字:
map
函数
map
函数,跟filter
一样同意后面跟一个回调函数,然后将每次遍历得到的值,返回给一个新的数组,下图是将上面filter
得到的四个数字10,20,40,50
再*2
然后返回给new2Nums
reduce
函数
reduce
作用是对数组中所有的内容进行汇总,要求传入两个参数:
参数一比较特殊,因为其本身又是一个函数,因为我们是对new2Nums
使用reduce
,而new2Nums
里面有四个值,所以此时会遍历四次。
preValue
上一次执行的结果
n
每次执行的值currentValue
0
初始值 就是为第一次的pre
赋值
首先有四个值
然后将reduce
里return
写死,全部为100
四次的执行结果就如下图所示:
懂得了基本原理,我们就可以做下面这题,求上面四个值的总和,就是把上一次的pre
与当前的n
进行相加,再将结果返回给total
最终得到的结果分析: