jQuery日本語リファレンス

jQuery does not mean Japanese Query...

Utilities/API/jQuery

jQuery.grep(array, callback, [invert])

配列中から、フィルタ関数を指定して特定の値だけを残した配列を返します。

コールバックされるフィルタ関数は、2つの引数を受け取ります。
1番目に渡されるのは、配列中の値そのものです。
2番目に渡されるのは、配列のインデックスです。
関数は受け取った値を配列中に残したければtrueを、除去したければfalseを返す必要があります。
但し、grep関数の第三引数のinvertにtrueを指定するとこの動作は逆になり、trueが除去、falseが残す処理になります。
サンプル
サンプル1
配列中から、値が5以外であり、添え字が4より大きいものだけを残した配列を作成します。
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(", "));
[全コードを表示] [実行結果を単体で表示]