作用:grep()方法用于数组元素过滤筛选。
语法:grep(array,callback,invert)。
参数含义:
array:带过滤数组。
callback:数组过滤函数,该函数包含两个参数,第一个是当前数组元素的值
,第二个是数组元素的下标,即元素索引值。
invert:布尔型可选项,默认为false,即返回的是过滤函数处理以后为true
的数组;选项设置为false的时候,返回的是过滤函数处理以后为false的数组
。
实例:
一、
<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><title>jQuery.grep demo</title><style>div {color: blue;}p {color: green;margin: 0;}span {color: red;}</style><script src="//code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body><div></div>
<p></p>
<span></span><script>
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></body>
</html>
运行结果:
1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1
1, 9, 4, 7, 3, 8, 6, 9, 1
1, 4, 7, 3, 8, 6, 1
二、
$.grep( [ 0, 1, 2 ], function( n, i ) {return n > 0;
});
运行结果:
[ 1, 2 ]
三、
$.grep( [ 0, 1, 2 ], function( n, i ) {return n > 0;
}, true );
运行结果:
[ 0 ]
实例二和三因为参数invert设置不同,而返回不同的数组。