9_Set.html 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <script>
  10. // Set 是一种新的数据结构 它类似于数组(比如获取到的元素集合) 但是它的成员都是唯一的 没有重复的值
  11. // 通过new Set() 可以创建一个Set数据结构
  12. let set1 = new Set();
  13. // add()方法 可以向Set数据结构中添加值
  14. set1.add(1);
  15. set1.add("hello");
  16. // add()方法 如果添加的值是已经存在的重复的值 在Set数据结构中 重复的值会被自动过滤掉
  17. set1.add(1);
  18. // 删除 delete()方法 可以删除Set数据结构中的值
  19. // set1.delete(1);
  20. // has()方法 可以判断Set数据结构中是否存在某个值
  21. console.log(set1.has("hello"));
  22. // size属性 可以获取Set数据结构中元素的个数
  23. console.log(set1.size);
  24. // for...of 循环 可以遍历Set数据结构中的值
  25. for(let item of set1){
  26. console.log(item);
  27. }
  28. let arr = [1,2,3,4,1,2,3];
  29. // Set数据结构可以将数组去重
  30. // let set2 = new Set([1,2,3,4,5,6]);
  31. // 可以将数组转换为Set数据结构 从而实现数组去重
  32. let set2 = new Set(arr);
  33. console.log(set2);
  34. console.log(set1);
  35. // WeakSet 是一种新的数据结构 它类似于Set数据结构 但是它的成员只能是对象 不能是其他类型的值
  36. let weak1 = new WeakSet();
  37. weak1.add({username:"张三"});
  38. console.log(weak1);
  39. </script>
  40. </body>
  41. </html>