📜  JavaScript中的Set(1)

📅  最后修改于: 2023-12-03 15:16:16.971000             🧑  作者: Mango

JavaScript中的Set

在JavaScript中,Set是一种内置的数据结构,可以用来存储不重复的值。Set中的值可以是任何类型的,包括原始类型和对象引用。

创建一个Set

可以使用以下方式创建一个Set:

const mySet = new Set();
添加元素

可以使用add()方法添加元素到Set中:

mySet.add('value1'); // 添加一个字符串
mySet.add(42); // 添加一个数字
mySet.add({ key: 'value' }); // 添加一个对象
删除元素

可以使用delete()方法从Set中删除元素:

mySet.delete('value1'); // 删除一个字符串
mySet.delete(42); // 删除一个数字
mySet.delete({ key: 'value' }); // 删除一个对象
判断是否包含元素

可以使用has()方法检查Set中是否包含一个元素:

mySet.has('value1'); // 返回false
mySet.has(42); // 返回true
mySet.has({ key: 'value' }); // 返回false,因为这是一个新对象
获取Set的大小

可以使用size属性获取Set中元素的数量:

mySet.size; // 返回2
迭代Set

可以使用forEach()或for-of循环来迭代Set中的元素:

mySet.forEach(function(value) {
  console.log(value);
});

for(const value of mySet) {
  console.log(value);
}
将Set转换为数组

可以使用Array.from()或扩展运算符将Set转换为数组:

const myArray = Array.from(mySet);
const myArray = [...mySet];
Set与数组的区别

与数组相比,Set具有以下两个主要区别:

  1. Set中的元素是唯一的,而数组中可以包含重复的元素。

  2. Set没有索引,因此不能使用下标进行访问。要检查Set中是否包含一个元素,必须使用has()方法。

总结

Set是一种有用的数据结构,可以用来存储不重复的值。了解Set的基本用法可以帮助程序员更好地处理数据。