Array.filter()

521 阅读1分钟

Array.filter()

返回通过断言的数组元素

概要

array.filter(predicate)

array.filter(predicate,o)

参数

predicate:用来判断array中的元素是否需要包含在返回数组中的调用函数

o:调用predicate时的可选this值

返回值

一个新数组,只包含那些让predicate返回真值的数组元素

描述

filter()会创建一个新数组,包含那些让predicate函数返回真值的array的元素。filter()方法不会修改array本身(注意predicate函数有可能会修改)。

filter()按照序号从小到大遍历array,对每个元素仅调用一次predicate,对于序号i,调用predicate时带有三个参数:

predicate(array[i],i,array)

如果predicate返回真值,则array中序号为i的元素会追加到新创建的数组中。一旦filter()测试完array中的每一个元素,它就会返回新创建的数组

示例

[1,2,3].filter(function (x){
	return x>1;//=>[2,3]
})