本篇文章给大家带来的内容是关于javascript中set对象的介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
一、创建set对象实例
set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用
1.构造函数语法:new set([iterable])
参数:
iterable 如果传递一个可迭代对象,它的所有元素将被添加到新的 set中;如果不指定此参数或其值为null,则新的 set为空
let arr = [1,2,2,3]; let myset = new set(arr); console.log(myset); // set(3) {1, 2, 3}
二、set实例属性
1.size属性将会返回set对象中元素的个数
let myset = new set(); myset.add(1); myset.add(5); myset.add(some text); console.log(myset.size); // 3
三、set实例方法
1.add() 方法用来向一个 set 对象的末尾添加一个指定的值
语法:myset.add(value)
参数:value 必需,需要添加到 set 对象的元素的值
let myset = new set(); myset.add(1); myset.add(5).add(some text); // 可以链式调用 console.log(myset); // set [1, 5, some text]
2.delete() 方法可以从一个 set 对象中删除指定的元素语法:myset.delete(value)
参数:value 将要删除的元素
返回值:成功删除返回 true,否则返回 false
let myset = new set(); myset.add(foo); myset.delete(foo); // 返回 true,删除成功 console.log(myset.size); // 0
3.clear() 方法用来清空一个 set 对象中的所有元素语法:myset.clear()
let myset = new set(); myset.add(1); myset.add(foo); console.log(myset.size); // 2 myset.clear(); console.log(myset.size); // 0
4.has() 方法返回一个布尔值来指示对应的值value是否存在set对象中语法:myset.has(value)
参数:
value 必须,是否存在于set的值
返回值:如果指定的值(value)存在于set对象当中,返回true; 否则返回 false
let myset = new set(); myset.add(foo); console.log(myset.has(foo)); // true console.log(myset.has(bar)); // false
5.entries()语法:myset.entries()
返回值:一个新的包含 [value, value] 形式的数组迭代器对象,value 是给定集合中的每个元素,迭代器 对象元素的顺序即集合对象中元素插入的顺序
let myset = new set(); myset.add(foobar); myset.add(1); myset.add(baz); let setiter = myset.entries(); console.log(setiter.next().value); // [foobar, foobar] console.log(setiter.next().value); // [1, 1] console.log(setiter.next().value); // [baz, baz]
6.values()语法:myset.values() 或者 myset.keys()
返回值:返回一个 iterator 对象,这个对象以插入set 对象的顺序包含了原 set 对象里的每个元素
let myset = new set(); myset.add(foo); myset.add(bar); myset.add(baz); let setiter = myset.values(); console.log(setiter.next().value); // foo console.log(setiter.next().value); // bar console.log(setiter.next().value); // baz
7.foreach()语法:myset.foreach(callback[, thisarg])
参数:
callback 每个元素都会执行的函数
thisarg 当执行callback函数时候,可以当作this来使用
let myset = new set([foo,bar,undefined]); myset.foreach((value1,value2,set) => { console.log(key =,value1,,value =,value2); // key = foo ,value = foo });
以上就是javascript中set对象的介绍(附示例)的详细内容。