資料結構 Set

2022-07-13 07:30:14 字數 1430 閱讀 3684

set

es6提供了新的資料結構  ---  set. 它類似於陣列,可以儲存任意資料型別,但是成員的值都是唯一的,沒有重複。set本身是乙個建構函式,用來生成set資料結構。

const s = new

set()

s.add(1)

s.add('a string')

s.add()

s.add(

true

)s.add(1)

console.log(s)

//set(4),true}

上面的**通過add方法向set結構加入成員,結果表明set結構不會新增重複的值。

《es6標準入門》一書中寫到set函式可以接受乙個陣列(或者具有iterable介面的其他資料結構)作為引數,用來初始化。

//

例一const set = new set([1,2,3,4,4])

[...set]

//[1,2,3,4]

//例二

const items = new set([1,2,3,4,5,5,5,5])

items.size //5

//例三

function

divs()

const set = new

set(divs())

set.size

上面的**中,例一和例二是set函式接受陣列作為引數,例三是接受類似陣列的物件作為引數。上面的**也展示了一種陣列去重的方法。 // [...new set(array)]

向set加入值時不會發生型別轉換,所有5和「5」是兩個不同的值。另外,兩個物件總是不相等的。

set例項的屬性和方法

set結構的例項有以下屬性。

· set.prototype.constructor: 建構函式,預設就是set函式

· set.prototype.size: 返回set例項的成員總數。

set例項的方法分為兩大類:操作方法(用於運算元據)和遍歷方法(用於遍歷成員)。

操作方法:

1. add()  //

新增某個值

2. delete() //

刪除某個值,返回布林值,表示刪除是否成功

3. has() //

返回乙個布林值,表示引數是否為set的成員

4. clear() //

清除所有成員,沒有返回值

遍歷方法:

1. keys()  //

返回鍵名

2. values() //

返回鍵值

3. entries() //

返回鍵值對(同時包括鍵名和鍵值)

4. foreach() //

遍歷每個成員

Set資料結構

1 es6 提供了新的資料結構 set。它類似於陣列,但是成員的值都是唯一的,沒有重複的值 set 本身是乙個建構函式,用來生成 set 資料結構。const s new set 2,3,5,4,5,2,2 foreach x s.add x for let i of s 2 354上面 通過add...

set資料結構

set 資料結構,類似陣列。所有的資料都是唯一的,沒有重複的值。它本身是乙個建構函式。屬性和方法 應用 var arr 1 1,1 3,4 5,3 5 資料去重 varset new set arr console.log set console.log set.size 4 console.log...

set資料結構

set類似於陣列,但是成員的值都是唯一的,沒有重複的值 const s1 newset console.log s1,size 0 const s2 newset a b console.log s2,size 2 const s2 newset a b a console.log s2,size ...