用法:1、用於將元素通過函數傳遞到集合中,生成新的jQuery物件,語法為「.map(callback(index,domElement))」;2、用於處理陣列中的元素並將結果封裝為新陣列返回,語法為「$.map(陣列或物件,指定函數)」。
本教學操作環境:windows10系統、jquery3.2.1版本、Dell G3電腦。
1、map() 把每個元素通過函數傳遞到當前匹配集合中,生成包含返回值的新的 jQuery 物件。
語法
.map(callback(index,domElement))
callback(index,domElement) 對當前集合中的每個元素呼叫的函數物件。
由於返回值是 jQuery 封裝的陣列,使用 get() 來處理返回的物件以得到基礎的陣列。
範例如下:
<!DOCTYPE html> <html> <head> <style>p { color:red; }</style> <script type="text/javascript" src="/jquery/jquery.js"></script> </head> <body> <p><b>Values: </b></p> <form> <input type="text" name="name" value="John"/> <input type="text" name="password" value="password"/> <input type="text" name="url" value="http://php.cn/"/> </form> <script> $("p").append( $("input").map(function(){ return $(this).val(); }).get().join(", ") ); </script> </body> </html>
輸出結果:
2、$.map() 函數用於使用指定函數處理陣列中的每個元素(或物件的每個屬性),並將處理結果封裝為新的陣列返回。
在jQuery 1.6 之前,該函數只支援遍歷陣列;從 1.6 開始,該函數也支援遍歷物件。
map()還會為函數傳入兩個引數:其一是當前迭代的元素或屬性值,其二是當前迭代項的陣列索引或物件屬性名。
該函數返回值將作為結果陣列中的一個元素,如果返回值為null或undefined,則不會被新增到結果陣列中。
$.map( object, callback )
object Array/Object型別 指定的需要處理的陣列或物件。
callback Function型別 指定的處理常式。
範例如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>123</title> <style> div { color:blue; } p { color:green; margin:0; } span { color:red; } </style> <script src="js/jquery.min.js"></script> </head> <body> <div></div> <p></p> <span></span> <script> $(function () { var arr = [ "a", "b", "c", "d", "e" ]; $("div").text(arr.join(", ")); arr = $.map(arr, function(n, i){ return (n.toUpperCase() + i); }); $("p").text(arr.join(", ")); arr = $.map(arr, function (a) { return a + a; }); $("span").text(arr.join(", ")); }) </script> </body> </html>
輸出結果:
相關視訊教學推薦:
以上就是map在jquery中的用法是什麼的詳細內容,更多請關注TW511.COM其它相關文章!