大白話理解Set結構


 

一、Set是什么?

set結構似於數組,但是成員的值都是唯一的,沒有重復的值。

參數可以是數組,類似數組的對象,字符串。

eg:   new Set([1, 2, 3, 4, 4]) ;     new Set(document.querySelectorAll('div'));  new Set(‘abbc’) ;    

它是個構造函數,我們先來打印下

 

 

 

 可以看到Set結構有個size的屬性, 它的值是去重之后的length.

注:Set 不會發生類型轉換,類似於===,但還是有部分區別,Set 認為NaN等於自身,而=== 認為NaN不等於自身。 

二、轉換類型

Set不是數組,那用什么方法轉換為數組呢? -----  Array.from()

三、方法

 

 

    .add(value):添加某個值,返回 Set 結構本身。

  .delete(value):刪除某個值,返回一個布爾值,表示刪除是否成功。

  .has(value):返回一個布爾值,表示該值是否為Set的成員。

  .clear():清除所有成員,沒有返回值。

來個例子吧:

.keys():遍歷鍵名、    .values():遍歷鍵值、  .entries():遍歷鍵值對、   .forEach():遍歷每個成員 

注:Set 結構沒有鍵名,只有鍵值(或者說鍵名和鍵值是同一個值),所以keysvalues方法,都是返回鍵值

  entries返回的鍵、值都相同。

四、應用:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM