JavaScript Set

JavaScript Set 是一種唯一值的集合。

每個值在 Set 中只能出現一次。

值可以是任何類型,原始值或對象。

如何創建 Set

可以通過以下方式創建 JavaScript Set:

  1. 將數組傳遞給 new Set()
  2. 創建一個空 Set 并使用 add() 添加值。

new Set() 方法

將數組傳遞給 new Set() 構造函數:

實例

// 創建一個 Set
const letters = new Set(["a","b","c"]);

親自試一試

創建 Set 并添加值:

實例

// 創建一個 Set
const letters = new Set();
// 向 Set 添加值
letters.add("a");
letters.add("b");
letters.add("c");

親自試一試

創建 Set 并添加變量:

實例

// 創建一個 Set
const letters = new Set();
// 創建變量
const a = "a";
const b = "b";
const c = "c";
// 將變量添加到 Set
letters.add(a);
letters.add(b);
letters.add(c);

親自試一試

add() 方法

實例

letters.add("d");
letters.add("e");

親自試一試

如果添加相同的元素,則只會保存第一個:

實例

letters.add("a");
letters.add("b");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");

親自試一試

列出元素

可以使用 for..of 循環列出所有 Set 元素(值):

實例

// 創建一個 Set
const letters = new Set(["a", "b", "c"]);
// 列出所有元素
let text = "";
for (const x of letters) {
  text += x;
}

親自試一試

Set 是對象

typeof 返回 object:

typeof letters;      // 返回 object

親自試一試

instanceof Set 返回 true:

letters instanceof Set;  // 返回 true

親自試一試

完整的 Set 參考手冊

如需完整參考,請訪問我們的:JavaScript Set 參考手冊

該手冊包含所有 Set 屬性和方法的描述和實例。

瀏覽器支持

Set 是 ES6 的特性(JavaScript 2015)。

自 2017 年 6 月起,所有現代瀏覽器均支持 ES6:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
2016 年 5 月 2017 年 4 月 2017 年 6 月 2016 年 9 月 2016 年 6 月

Internet Explorer 不支持 Set。