jQuery 的 map() 函數,可以將數組中的每個元素通過回調函數轉換為新的元素,最終返回新的數組。
$('arr').map(function(index, element) { return 'new element' });
map() 函數通過遍歷數組中的每個元素,執行回調函數并返回新元素,最終將所有新元素組成一個新的數組。
回調函數有兩個參數:
- index:當前元素在原數組中的下標。
- element:當前元素本身。
示例:
// 原數組 var arr = [1, 2, 3, 4]; // 將原數組中的元素都加上 1 并返回新元素 var newArr = $(arr).map(function(index, element) { return element + 1; }); console.log(newArr); // [2, 3, 4, 5]
在回調函數中也可以執行其他的操作,例如將元素轉換為 DOM 元素,或者返回一個 jQuery 對象。
示例:
// 將數組中的元素都轉換為元素并返回 var $newDivs = $('arr').map(function(index, element) { return $('').text(element); }); console.log($newDivs); // [1,2,3,4]需要注意的是,map() 函數返回的是一個 jQuery 對象,而不是一個普通的數組。如果需要將其轉換為數組,可以使用 toArray() 函數。
// 將 jQuery 對象轉換為數組 var newArr = $newDivs.toArray(); console.log(newArr); // [1,2,3,4]