-
forEach()
对数组中的每一项运行给定函数,这个方法没有返回值。如果是基本类型,在循环中操作这些数据,不会改变原数组。如果是引用类型,在循环中改变了数据,就会改变原数组。
语法
array.forEach(callback(currentValue, index, array) { // }, this)
参数
callback
为数组中的每个元素执行的函数,该函数接受三个参数:\1、currentValue( 当前值 ) 数组中正在处理的当前元素
2、idnex(索引)数组中正在处理的当前值的索引
3、array(数组)当前正在处理的数组\thisArg
可选
可选参数,当执行回调时用作this
的值。返回值
undefined
不会改变原数组描述
1、没有办法跳出或终止 forEach 循环。
2、如果在迭代中删除了元素,之后的元素会被跳过。 -
every()
测试数组的所有元素是否都通过了指定函数的测试。一般有需要终止的循环,也会使用这个方法或者
some()
方法。
为数组中的每一个元素执行一次callback
函数,直到找到一个使callback
返回false
的元素。这个时候就会终止循环返回false
,没有的话就全部循环完毕,返回true
语法
arr.every(callback(current, index, array) { }, thisArg);
参数
callback
为数组中的每个元素执行的函数,该函数接受三个参数:1、currentValue( 当前值 ) 数组中正在处理的当前元素
2、idnex(索引)数组中正在处理的当前值的索引
3、array(数组)当前正在处理的数组thisArg
可选
可选参数,当执行回调时用作this
的值。返回值
如果回调函数返回falsey
值,就返回false,否则返回true
。 不会改变原数组 -
some()
测试数组的所有元素是否都通过了指定函数的测试。一般有需要终止的循环,也会使用这个方法或者
every()
方法。
为数组中的每一个元素执行一次callback
函数,直到找到一个使callback
返回true
的元素。这个时候就会终止循环返回true
,没有的话就全部循环完毕,返回false
语法
arr.some(callback (currentValue, index, array) { }, thisArg);
参数
callback
为数组中的每一个元素执行的函数,该函数接受三个参数:1、currentValue( 当前值 ) 数组中正在处理的当前元素
2、idnex(索引)数组中正在处理的当前值的索引
3、array(数组)当前正在处理的数组thisArg
可选
可选参数,当执行回调时用作this
的值。返回值
如果回调函数返回truthy
值,就返回true
; 否则返回false
; 不会改变原数组 -
filter()
创建一个新数组,包含通过提供的回调函数返回
true
的所有元素。全部返回false
则返回空数组。
语法arr.filter(callback (currentValue, index, array) { }, thisArg);
参数
callback
为数组中的每一个元素执行的函数,该函数接受三个参数:1、currentValue( 当前值 ) 数组中正在处理的当前元素
2、idnex(索引)数组中正在处理的当前值的索引
3、array(数组)当前正在处理的数组thisArg
可选
可选参数,当执行回调时用作this
的值。返回值
返回一个通过提供的回调函数返回true
的所有元素。全部返回false
则返回空数组。; 不会改变原数组 -
map()
创建一个新数组,包含回调函数每次执行的返回值。
语法arr.map(callback (currentValue, index, array) { // dosoming return value; }, thisArg);
参数
callback
为数组中的每一个元素执行的函数,该函数接受三个参数:1、currentValue( 当前值 ) 数组中正在处理的当前元素
2、idnex(索引)数组中正在处理的当前值的索引
3、array(数组)当前正在处理的数组thisArg
可选
可选参数,当执行回调时用作this
的值。返回值
返回一个通过提供的回调函数返回的值。 不会改变原数组 -
reduce()
对累加器和数组中的每一个元素应用一个函数,返回累加的值。
语法arr.reduce(callback, initialValue)
参数
callback
执行数组中每个值的函数,包含四个参数:accumulator
: 累加器累加回调的返回值;是上一次回调返回的累加值或initialValue
(如果设置了initialValue
,第一次的值 就是initialValue
)。
currentValue
: 正在处理的元素
currentIndex
> 可选:正在处理的当前元素的索引。如果提供了initailValue
,则索引号为0,否则为1。
array
> 可选 : 数组本身。initialValue
>可选:用作第一个调用callback
的参数的值。如果没有提供,则将使用数组中的第一个元素。返回值
函数累计处理的结果。