解释JavaScript中的设置?
套装
Set是ES6提供的新对象类型。它不过是唯一的值观的集合。值可以是简单的原语,例如字符串,整数等,也可以是复杂的对象类型,例如对象文字或数组。
语法
new Set([iterable]);
参数
可迭代的
这是一个可迭代的对象,其元素将添加到新集中。如果未提供iterable或传递了null值,则新集合将为空。
示例
由于集合仅允许唯一值,因此在集合中添加一些现有元素之后对象的长度将不会更改。
<html>
<body>
<script>
var set1 = new Set(["a","a","b","b","c"]);// no of unique elements - 3(a, b and c)
set1.add('c').add('d') // Two elements were added (c,d)
set1.forEach(alphabet => { // In total 7 elements but only 4 unique values
document.write(`alphabet ${alphabet}!`);
document.write("</br>");
});
document.write(set1.size); // it displays 4 since sets accept only unique values.
</script>
</body>
</html>输出结果
alphabet a! alphabet b! alphabet c! alphabet d! 4
示例2
设置还显示布尔值。他们检查给定集中提供的元素是否可用,并执行布尔输出。
<html>
<body>
<script>
var set1 = new Set(["a","a","b","b","c"]);
set1.add('c').add('d')
set1.forEach(alphabet => {
document.write(`alphabet ${alphabet}!`);
document.write("</br>");
});
document.write(set1.has('a')); // it display true because a is there in set1
document.write("</br>");
document.write(set1.has('8')); // it display false because there is no 8 in the set1.
document.write("</br>");
document.write(set1.size); // displays only unique values because only unique values are accepted
</script>
</body>
</html>输出结果
alphabet a! alphabet b! alphabet c! alphabet d! true false 4