国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

一文搞懂ES6中的Map和Set

2024-05-06 15:39:14
字體:
來源:轉載
供稿:網友

Map

Map對象保存鍵值對。任何值(對象或者原始值) 都可以作為一個鍵或一個值。構造函數Map可以接受一個數組作為參數。

Map和Object的區別

•一個Object 的鍵只能是字符串或者 Symbols,但一個Map 的鍵可以是任意值。

•Map中的鍵值是有序的(FIFO 原則),而添加到對象中的鍵則不是。

•Map的鍵值對個數可以從 size 屬性獲取,而 Object 的鍵值對個數只能手動計算。

•Object 都有自己的原型,原型鏈上的鍵名有可能和你自己在對象上的設置的鍵名產生沖突。

1.Map對象的屬性

•size:返回Map對象中所包含的鍵值對個數

1.Map對象的方法

•set(key, val): 向Map中添加新元素

•get(key): 通過鍵值查找特定的數值并返回

•has(key): 判斷Map對象中是否有Key所對應的值,有返回true,否則返回false

•delete(key): 通過鍵值從Map中移除對應的數據

•clear(): 將這個Map中的所有元素刪除

const m1 = new Map([['a', 111], ['b', 222]])console.log(m1) // {"a" => 111, "b" => 222}m1.get('a') // 111const m2 = new Map([['c', 3]])const m3 = new Map(m2)m3.get('c') // 3m3.has('c') // truem3.set('d', 555)m3.get('d') // 555

1.遍歷方法

•keys():返回鍵名的遍歷器

•values():返回鍵值的遍歷器

•entries():返回鍵值對的遍歷器

•forEach():使用回調函數遍歷每個成員

const map = new Map([['a', 1], ['b', 2]])for (let key of map.keys()) { console.log(key)}// "a"http:// "b"for (let value of map.values()) { console.log(value)}// 1// 2for (let item of map.entries()) { console.log(item)}// ["a", 1]// ["b", 2]// 或者for (let [key, value] of map.entries()) { console.log(key, value)}// "a" 1// "b" 2// for...of...遍歷map等同于使用map.entries()for (let [key, value] of map) { console.log(key, value)}// "a" 1// "b" 2

1.map與其他數據結構的互相轉換

•map轉換為數組(使用擴展運算符)

const arr = [[{'a': 1}, 111], ['b': 222]]const myMap = new Map(arr)[...myMap] // map轉數組。 [[{'a': 1}, 111], ['b': 222]]•Map與對象的互換const obj = {}const map = new Map(['a', 111], ['b', 222])for(let [key,value] of map) { obj[key] = value}console.log(obj) // {a:111, b: 222}

•JSON字符串要轉換成Map可以先利用JSON.parse()轉換成數組或者對象,然后再轉換即可。

Set

Set對象允許你存儲任何類型的值,無論是原始值或者是對象引用。它類似于數組,但是成員的值都是唯一的,沒有重復的值。

Set 本身是一個構造函數,用來生成Set 數據結構。Set函數可以接受一個數組(或者具有 iterable 接口的其他數據結構)作為參數,用來初始化。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 吉安市| 綦江县| 鸡西市| 高台县| 台湾省| 高台县| 福泉市| 延寿县| 个旧市| 镇赉县| 中山市| 筠连县| 临洮县| 和静县| 新晃| 礼泉县| 都江堰市| 尖扎县| 始兴县| 长汀县| 丹棱县| 明星| 罗田县| 宣恩县| 三河市| 波密县| 黄浦区| 南宫市| 龙岩市| 黑山县| 油尖旺区| 广灵县| 吴忠市| 包头市| 玉龙| 东至县| 宜都市| 萨迦县| 启东市| 荆州市| 霞浦县|