首頁  >  文章  >  web前端  >  js怎麼定義map

js怎麼定義map

(*-*)浩
(*-*)浩原創
2019-05-20 09:20:3411566瀏覽

一直使用陣列和物件來定義資料模型,前幾天在翻閱ES6語法的時候,突然發現有一種Map物件對操作鍵值對特別好用,而且程式碼更簡潔明了,簡直太棒了。

js怎麼定義map

今天,我們就來一步步了解什麼是Map對象,詳細跟大家介紹一下Map對象的屬性與方法。希望大家以後再資料操縱方法多一種解決問題的方法,這是ECMA 6 新增的資料結構。

定義

Map物件保存鍵/值對,是鍵/值對的集合。任何值(物件或原始值) 都可以作為一個鍵或一個值。 Object結構提供了「字串—值」的對應,Map結構提供了「值—值」的對應。

語法:

mapObj=new Map([iterable]);

iterable 可以是陣列或其他iterable 對象,其元素或為鍵值對,或為兩個元素的陣列。每個鍵值對都會加入到新的 Map。 null 會被當作 undefined。

Map實例

所有的Map實例都會繼承自Map.prototype。

範例

Map對象類似於對象,也是鍵值對的集合,但是「鍵」的範圍不限於字串,各種類型的值(包括物件)都可以當作鍵。

let a=new Map();
let b={p:'Hello World'};
a.set(b,"content");
a.get(b);				//"content"
a.has(b)				//true
a.delete(b)				//true
a.has(b)   				//false

作為建構函數,Map也可以接受一個陣列作為參數。此陣列的成員是一個個表示鍵值對的陣列。

let map=new Map(['first','aaaaaa'],['second','bbbbbb']);;
map.size();				//2
map.has('first');		//true
a.get(b);				//'aaaaaa'
map.has('second');		//true
a.get(b);				//'bbbbbb'

以上是js怎麼定義map的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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