jQuery的$.each()方法是一個(gè)很常用的迭代函數(shù),它可以遍歷數(shù)組和對(duì)象,并對(duì)每個(gè)元素執(zhí)行回調(diào)函數(shù)。
使用$.each()方法時(shí),需要傳入兩個(gè)參數(shù),第一個(gè)參數(shù)是要遍歷的數(shù)組或?qū)ο螅诙€(gè)參數(shù)是回調(diào)函數(shù)。回調(diào)函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是當(dāng)前遍歷到的元素,第二個(gè)參數(shù)是當(dāng)前元素的索引或鍵。
$.each(array, function(index, value){ // 回調(diào)函數(shù)中的代碼 }); $.each(object, function(key, value){ // 回調(diào)函數(shù)中的代碼 });
在回調(diào)函數(shù)中,我們可以使用當(dāng)前元素和索引來做一些操作,比如:
var numArray = [1, 2, 3, 4, 5]; $.each(numArray, function(index, value) { var square = value * value; console.log(square); // 輸出1, 4, 9, 16, 25 });
另外,$.each()方法也支持在回調(diào)函數(shù)中使用return來中斷循環(huán),和傳遞一個(gè)對(duì)象或數(shù)組作為第一個(gè)參數(shù)。
var obj = {a: 1, b: 2, c: 3}; $.each(obj, function(key, value) { if (key === 'b') { return false; // 中斷循環(huán) } console.log(key + ': ' + value); // 輸出a: 1, c: 3 }); var arr = ['a', 'b', 'c']; var res = $.each(arr, function(index, value){ return value + index; // 傳遞一個(gè)數(shù)組作為返回值 }); console.log(res); // 輸出["a0", "b1", "c2"]
在實(shí)際開發(fā)中,我們經(jīng)常會(huì)使用$.each()方法來遍歷DOM元素,例如:
$('.list').each(function(index, element){ // 在這里對(duì)每個(gè)列表元素執(zhí)行操作 });
總之,jQuery的$.each()方法是一個(gè)非常方便的迭代函數(shù),可以幫助我們更輕松地遍歷數(shù)組、對(duì)象和DOM元素。