首頁  >  文章  >  web前端  >  在jquery中有map方法嗎

在jquery中有map方法嗎

青灯夜游
青灯夜游原創
2022-06-09 17:25:111697瀏覽

jquery中有map()方法。 map()方法用於使用指定回呼函數處理數組的每個元素(或物件的每個屬性),並將處理結果封裝為新數組傳回,語法「$.map(數組或物件,回調函數)」。 map()方法會為回呼函數傳入兩個參數:第一個參數為目前迭代的元素或屬性值,第二個參數為目前迭代項的陣列索引或物件屬性名稱;如果回呼函數的傳回值為null或undefined,則不會被加入到結果陣列中。

在jquery中有map方法嗎

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

jquery中有map()方法。

在jquery中,map()方法用於使用指定回呼回呼函數處理陣列的每個元素(或物件的每個屬性),並將處理結果封裝為新陣列傳回。

注意:1. 在jQuery 1.6 之前,函數只支援遍歷陣列;從 1.6 開始,函數也支援遍歷物件。

語法格式:

$.map( object, callback )
objectArray/Object類型  指定的需要處理的陣列或物件。
參數 描述

callback

Function類型    指定的處理函數。

在jquery中有map方法嗎

map()會為回呼函數傳入兩個參數:其一是目前迭代的元素或屬性值,其二是目前迭代項的陣列索引或對象屬性名。
回呼函數傳回值將作為結果陣列中的一個元素,如果傳回值為null或undefined,則不會被加入到結果陣列中。

範例:使用$.map() 修改一個陣列的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<style>
			div { color:blue; }
			p { color:green; margin:0; }
			span { color:red; }
		</style>
		<script src="./js/jquery-3.6.0.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中的each方法一樣看,map方法也可以遍歷偽數組

既然jQuery中的each和map方法都可以遍歷數組和偽數組,那麼它們之間又有什麼區別?

1、each方法預設的回傳值是遍歷誰就回傳誰

2、map方法預設的回傳值是一個空數組

1、each方法不支援在回呼函數中對遍歷的陣列進行處理

2、map方法可以在回呼函數中透過return對遍歷的陣列進行處理,然後產生一個新的陣列回傳


#可以看到map方法傳回的陣列是索引加上索引對應的值,所以說map方法是可以透過return對遍歷的陣列進行處理,然後產生一個新的陣列回傳

#########而each是不支援透過return在回呼函數中對遍歷的陣列進行處理######【推薦學習:###jQuery影片教學###、###web前端影片###】####

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn