1. 程式人生 > >解析jQuery下的$.grep()方法和$.map()方法

解析jQuery下的$.grep()方法和$.map()方法

所以現在返回的是[0,1,2],也就是被callback函式過濾掉的元素。
    (2)$.map()方法
       jQuery.map(array,callback)
      將一個數組中的元素轉換到另一個數組中。
    作為引數的轉換函式會為每個陣列元素呼叫,而且會給這個轉換函式傳遞一個表示被轉換的元素作為引數。轉換函式可以返回轉換後的值、null(刪除陣列中的專案)或一     個包含值的陣列,並擴充套件至原始陣列中。
   

引數
array (Array) : 待轉換陣列。

callback (Function) : 為每個陣列元素呼叫,而且會給這個轉換函式傳遞一個表示被轉換的元素作為引數。函式可返回任何值。另外,此函式可設定為一個字串,當設定為字串時,將視為“lambda-form”(縮寫形式?),其中 a 代表陣列元素。如“a * a”代表“function(a){ return a * a; }”。

示例
將原陣列中每個元素加 4 轉換為一個新陣列。

jQuery 程式碼:

$.map( [0,1,2], function(n){
return n + 4;
});
結果:

[4, 5, 6]

原陣列中大於 0 的元素加 1 ,否則刪除。

jQuery 程式碼:

$.map( [0,1,2], function(n){
return n > 0 ? n + 1 : null;
});
結果:

[2, 3]