jQuery.each()
此方法是通用遍歷方法,可用於遍歷物件和陣列。
不同於each()方法的是jQuery.each()可用於遍歷任何物件,而each()方法只能夠遍歷jQuery物件。
方法的返回值是被遍歷的物件或者陣列。
語法結構一:
[JavaScript] 純文字檢視 複製程式碼jQuery.each(array, callback(index,ele))
引數解析:
(1).array:被遍歷的陣列。
(2).callback:處理每個元素的函式。index:可選,當前陣列元素的索引值(從0開始),ele:可選,當前陣列元素。函式中的this指向當前陣列元素的物件封裝(陣列元素並不一定是物件,比如有可能是數字或者字串)。如果callback返回true,那麼將會終止遍歷,返回非false的值,那麼相當於一個迴圈中的continue語句,立即跳出當前的遍歷,轉到下一個遍歷。
jQuery1.0版本新增。
語法結構二:
[JavaScript] 純文字檢視 複製程式碼jQuery.each(object, callback(propertyName,valueOfProperty))
引數解析:
(1).object:要被遍歷的物件。
(2).callback:處理每個物件屬性的函式。propertyName:可選,物件的屬性名稱,valueOfProperty:可選,對應屬性值。函式中的this指向當前屬性值的物件封裝(屬性值並不一定是物件,比如有可能是數字或者字串)。如果callback返回true,那麼將會終止遍歷,返回非false的值,那麼相當於一個迴圈中的continue語句,立即跳出當前的遍歷,轉到下一個遍歷。
jQuery1.0版本新增。
程式碼例項:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script src="https://code.jquery.com/jquery-3.1.1.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#bt").click(function () { $.each([0, 4, 8], function (i, n) { alert(+i+":"+n); }) }) }) </script> </head> <body> <input type="button" id="bt" value="檢視演示"/> </body> </html>
點選按鈕可以遍歷陣列,彈出值是陣列元素索引和對應的陣列成員。
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script src="https://code.jquery.com/jquery-3.1.1.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#bt").click(function () { $.each($("li"),function(i,n){ alert(i + ": " + $(n).text()) }) }) }) </script> </head> <body> <ul> <li>JSP專區</li> <li>DIV+CSS專區</li> <li>ASP專區</li> <li>jQuery專區</li> </ul> <input type="button" id="bt" value="檢視演示"/> </body> </html>
$("li")獲取的雖然不是陣列,但是它是一個類陣列,所以處理方式和陣列相同。
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script src="https://code.jquery.com/jquery-3.1.1.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#bt").click(function () { var obj = { "age": 4, "address":"青島市南區" } $.each(obj, function (prop, propValue) { alert(prop + ": " + propValue) }) }) }) </script> </head> <body> <input type="button" id="bt" value="檢視演示"/> </body> </html>
遍歷物件,然後彈出屬性名稱和對應的屬性值。