jquery中有個grep()方法用於數組元素過濾篩選,悲劇的是,平時我們用的api文檔中找不到這個說明。查看官方說明:http://api.jquery.com/jQuery.grep/
grep()的使用方法:
grep(array,callback,invert)
array:待過濾數組;
callback:處理數組中的每個元素,並過濾元素,該函數中包含兩個參數,第一個是當前數組元素的值,一個是當前數組元素的下標,即元素索引值。此函數應傳回一個布林值。另外,此函數可設定為字串,當設定為字串時,將視為「lambda-form」(縮寫形式?),其中 a 代表陣列元素,i 代表元素索引值。如「a > 0」代表「function(a){ return a > 0; }」
invert:布林型可選項,預設值false,值為true或false, 如果「invert」 為false 或設定,則函數會傳回數組中由過濾函數傳回true 的元素,當」invert」 為true,則傳回過濾函數中傳回false 的元素集。
解釋完grep()的用法,現在來舉個小例子:
所以現在回傳的是[0,1,2],也就是被callback函數過濾掉的元素。