reduce
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。不会改变原数组。
注意: reduce() 对于空数组是不会执行回调函数的。
/*
接受两个参数,第一个参数为用于执行每个数组元素的compose函数,必须;第二个为初始值,非必需
*compose函数接受四个参数
total 必需。初始值, 或者计算结束后的返回值。
currentValue 必需。当前元素
currentIndex 可选。当前元素的索引
arr 可选。当前元素所属的数组对象。
*/
var arr = [1, 2, 4]
arr.reduce((total, value) => total + value) // 7
arr.reduce((total, value) => total + value, 3) // 10
every
every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。
every() 方法使用指定函数检测数组中的所有元素:
如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
如果所有元素都满足条件,则返回 true。
注意: every() 不会对空数组进行检测。
注意: every() 不会改变原始数组。
var arr = [1, 2, 4]
arr.every((item, index, array) => item > 0) // true
arr.every(item => item < 3)
some
some 跟 every 的区别:只要有一个元素满足条件,返回true;都不满足,返回false
网友评论