首頁 > web前端 > js教程 > map在jquery的用法是什麼

map在jquery的用法是什麼

WBOY
發布: 2022-04-02 16:06:54
原創
3546 人瀏覽過

用法:1、用於將元素透過函數傳遞到集合中,產生新的jQuery對象,語法為「.map(callback(index,domElement))」;2、用於處理陣列中的元素並將結果封裝為新陣列傳回,語法為「$.map(陣列或物件,指定函數)」。

map在jquery的用法是什麼

本教學操作環境:windows10系統、jquery3.2.1版本、Dell G3電腦。

map在jquery中的用法

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>
登入後複製

輸出結果:

map在jquery的用法是什麼

#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的用法是什麼

#相關影片教學推薦:jQuery影片教學

以上是map在jquery的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板