jQuery.grep()方法


实例

过滤原始数组

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
    var arr = [ 1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1 ];
    $( "div" ).text( arr.join( ", " ) );
    arr = jQuery.grep(arr, function( n, i ) {
        return ( n !== 5 && i > 4 );
    });
    $( "p" ).text( arr.join( ", " ) ); 
    arr = jQuery.grep(arr, function( a ) {
        return a !== 9;
    });
    $( "span" ).text( arr.join( ", " ) );
})
</script>

运行一下 »

定义和用法

$.grep() 函数使用指定的函数过滤数组中的元素,并返回过滤后的数组。

提示:源数组不会受到影响,过滤结果只反映在返回的结果数组中。

语法

$.grep( array, function [, invert ] )

参数 描述
array Array类型 将被过滤的数组。
function Function类型 指定的过滤函数。grep()方法为function提供了两个参数:其一为当前迭代的数组元素,其二是当前迭代元素在数组中的索引。
invert 可选。 Boolean类型 默认值为false,指定是否反转过滤结果。如果参数invert为true,则结果数组将包含function返回false的所有元素。

更多实例

过滤原始数组
过滤出数组中值大于 0 的元素。

过滤原始数组
过滤出数组中值不大于 0 的元素。