日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ES6新特性之Set和Map

發布時間:2024/4/13 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ES6新特性之Set和Map 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ES6提供了Set和Map的數據結構。

Set,本質與數組類似。不同在于Set中只能保存不同元素,如果元素相同會被忽略。和java中的Set集合非常相似。
?

<script>let set = new Set();set.add(1);set.add(2);set.add(5);set.add(8);set.forEach(value => {console.log(value);})</script>

構造函數:

// Set構造函數可以接收一個數組或空 let set = new Set(); set.add(1);// [1] // 接收數組 let set2 = new Set([2,3,4,5,5]);// 得到[2,3,4,5]

方法:

set.add(1);// 添加 set.clear();// 清空 set.delete(2);// 刪除指定元素 set.has(2); // 判斷是否存在 set.forEach(function(){})//遍歷元素 set.size; // 元素個數。是屬性,不是方法。

map,本質是與Object類似的結構。不同在于,Object強制規定key只能是字符串。而Map結構的key可以是任意對象。

即:

object是 <string,object>集合
map是<object,object>集合

<script>const map = new Map([['key1','value1'],['key2','value2'],]);map.set("key3", "value3");console.log(map.get("key1"));console.log(map);map.forEach((value, key) => {console.log(key, value);});for(let key of map.keys()){console.log(key);}</script>

構造函數:

// map接收一個數組,數組中的元素是鍵值對數組 const map = new Map([ ['key1','value1'], ['key2','value2'], ]) // 或者接收一個set const set = new Set([ ['key1','value1'], ['key2','value2'], ]) const map2 = new Map(set) // 或者其它map const map3 = new Map(map);

方法:

map.set(key, value);// 添加 map.clear();// 清空 map.delete(key);// 刪除指定元素 map.has(key); // 判斷是否存在 map.forEach(function(key,value){})//遍歷元素 map.size; // 元素個數。是屬性,不是方法 map.values() //獲取value的迭代器 map.keys() //獲取key的迭代器 map.entries() //獲取entry的迭代器 用法: for (let key of map.keys()) { console.log(key); } 或: console.log(...map.values()); //通過擴展運算符進行展開

?

?

總結

以上是生活随笔為你收集整理的ES6新特性之Set和Map的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。