numbers = [1,2,3,4,5,1]; var filterResult = numbers.filter(function(i){ return (i > 2); });
我不明白这是如何工作的.如果我省略了我作为一个函数参数,它会打破这个功能,但是我没有绑定任何东西,所以为什么它需要在那里?
解决方法
.filter(
Array.prototype.filter
)使用3个参数调用提供的函数:
function(element,index,array) { ...
>元素是调用的特定数组元素.
index是元素的当前索引
> array是正在过滤的数组.
您可以使用任何或所有参数.
在你的情况下,我指的是元素,并在你的函数体中使用:
function(i){ return (i > 2); }
换句话说,“元素大于2的过滤元素”.