18.Set.html 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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. /**
  11. * set 类似于es6新增的特性 类似于数组
  12. * set 可以使用for of 和 扩展运算符
  13. * size 返回集合中的元素个数
  14. * add() 向集合中添加元素 并返回添加的集合
  15. * delete() 删除元素 返回布尔值
  16. * has() 判断当前集合中是否包含当前元素 并返回布尔值
  17. * clear() 清空当前集合 返回的是undefined
  18. */
  19. let s = new Set();
  20. console.log(s);
  21. let s1 = new Set([1, 2, 3, 4, 5, 6, 7]);
  22. console.log(s1, "s1");
  23. console.log(s1.size);
  24. //console.log(s1.add(13));
  25. s1.add(13);
  26. console.log(s1);
  27. console.log(s1.delete(15));
  28. s1.delete(15);
  29. console.log(s1);
  30. console.log(s1.has(14));
  31. console.log(s1);
  32. console.log(s1.clear());
  33. s1.clear();
  34. console.log(s1);
  35. var arr = [12,23,34,45,56,78];
  36. var s2 = new Set(arr);
  37. console.log(s2,'s2');
  38. var s3 = Array.from(s2);
  39. console.log(s3,'s3');
  40. //去重
  41. var list = [12,23,3245,32,23,66,57,78,76,57,3245];
  42. function reducer(arr) {
  43. var a1 = new Set(arr);
  44. return Array.from(a1);
  45. }
  46. console.log(reducer(list))
  47. </script>
  48. </body>
  49. </html>