JavaScript Set 方法
new Set() 方法
將陣列傳遞給 new Set()
建構函式
add() 方法
如果您新增相同的元素,則只有第一個會被儲存
示例
letters.add("a");
letters.add("b");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
自己動手試一試 »
列出 Set 元素
您可以使用 for..of 迴圈列出所有 Set 元素(值)
示例
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 列出所有元素
let text = "";
for (const x of letters) {
text += x;
}
自己動手試一試 »
has() 方法
如果指定值存在於 set 中,has()
方法將返回 true
。
示例
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// Set 是否包含 "d"?
answer = letters.has("d");
自己動手試一試 »
forEach() 方法
forEach()
方法為每個 Set 元素呼叫一個函式
示例
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 列出所有條目
let text = "";
letters.forEach (function(value) {
text += value;
})
自己動手試一試 »
values() 方法
values()
方法返回一個包含 Set 中所有值的 Iterator 物件
示例 1
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 獲取所有值
const myIterator = letters.values();
// 列出所有值
let text = "";
for (const entry of myIterator) {
text += entry;
}
自己動手試一試 »
示例 2
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 列出所有值
let text = "";
for (const entry of letters.values()) {
text += entry;
}
自己動手試一試 »
keys() 方法
keys()
方法返回一個包含 Set 中所有值的 Iterator 物件
注意
Set 沒有鍵,因此 keys()
返回的值與 values()
相同。
這使得 Set 與 Map 相容。
示例 1
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 建立一個迭代器
const myIterator = letters.keys();
// 列出所有元素
let text = "";
for (const x of myIterator) {
text += x;
}
自己動手試一試 »
示例 2
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 列出所有元素
let text = "";
for (const x of letters.keys()) {
text += x;
}
自己動手試一試 »
entries() 方法
entries()
方法返回一個 Iterator,其中包含 Set 中的 [value,value] 對。
注意
entries()
方法應該從物件返回一個 [key,value] 對。
Set 沒有鍵,因此 entries()
方法返回 [value,value]。
這使得 Set 與 Map 相容。
示例 1
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 獲取所有條目
const myIterator = letters.entries();
// 列出所有條目
let text = "";
for (const entry of myIterator) {
text += entry;
}
自己動手試一試 »
示例 2
// 建立一個 Set
const letters = new Set(["a","b","c"]);
// 列出所有條目
let text = "";
for (const entry of letters.entries()) {
text += entry;
}
自己動手試一試 »