iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 13
1

集合是一種資料順序沒有意義而且其資料不會有重複值的一種資料結構,在 JavaScript ES6 的規範中,我們可以透過 new Set() 來建立一個 set。

接著就來練習建立 set 和使用它的相關方法吧!
先建立一個 set:

let set1 = new Set([1, 2, 3]);

使用 add() 函式:

新增元素

set1.add(5);
console.log(set1); // Set { 1, 2, 3, 5 }

使用 delete() 函式:

刪除元素

set1.delete(2);
console.log(set1); // Set { 1, 3, 5 }

使用 size() 函式:

計算 set 共有幾個元素

console.log(set1.size); // 3

使用 has() 函式:

判斷 set 是否有某元素

console.log(set1.has(1)); // true
console.log(set1.has(6)); // false

使用 clear() 函式:

清除 set 子元素

console.log(set1.clear()); // undefined

使用 keys() 函式:

返回索引值,但 Set不分 索引值和資料值,因此此函式和 values() 結果相同。

set1 = new Set([4, 5, 6]);

for (let item of set1.keys()) {
  console.log(item);
}

// 4
// 5
// 6

使用 values() 函式:

返回資料值

set1 = new Set([4, 5, 6]);

for (let item of set1.values()) {
  console.log(item);
}

// 4
// 5
// 6

使用 entries() 函式:

返回索引和資料值

set1 = new Set([4, 5, 6]);

for (let item of set1.entries()) {
  console.log(item);
}

// [4, 4]
// [5, 5]
// [6, 6]

這次實作的完整程式碼在以下連結:
https://github.com/a90100/javascript-data-structure/blob/master/day13-set.js

介紹了 Set 之後,明天要來介紹擁有索引值(key)和資料值(value)的 Map。


上一篇
Day12-資料結構-樹(Tree)的一些操作方法
下一篇
Day14-來了解Map並實作它吧!
系列文
使用JavaScript學習資料結構與演算法30

尚未有邦友留言

立即登入留言