JavaScript Set 方法
新的 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() 方法
对于每个 Set 元素,forEach()
方法都会调用一个函数
示例
// 创建一个 Set
const letters = new Set(["a","b","c"]);
// 列出所有条目
let text = "";
letters.forEach (function(value) {
text += value;
})
自己尝试 »
values() 方法
values()
方法返回一个包含 Set 中值的迭代器对象
示例 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 中值的迭代器对象
注意
Set 没有键,因此 keys()
返回与 values()
相同的值。
这使得 Set 与 Maps 兼容。
示例 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()
方法返回一个包含 Set 中 [值, 值] 对的迭代器。
注意
entries()
方法应该从对象返回 [键, 值] 对。
Set 没有键,因此 entries()
方法返回 [值, 值]。
这使得 Set 与 Maps 兼容。
示例 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;
}
自己尝试 »