深入学习js笔记(一、数组去重的7种方法)

以下是阅读了mqyqingfeng的博客原文链接后整理的笔记,感谢mqyqingfeng大大!





  数组去重
  
  
  




  



最后的执行结果为:

方法 结果 说明
for循环 [1, "1", null, undefined, String, String, /a/, /a/, NaN, NaN] 对象和 NaN 不去重
indexOf [1, "1", null, undefined, String, String, /a/, /a/, NaN, NaN] 对象和 NaN 不去重
sort [/a/, /a/, "1", 1, String, 1, String, NaN, NaN, null, undefined] 对象和 NaN 不去重 数字 1 也不去重
filter + indexOf [1, "1", null, undefined, String, String, /a/, /a/] 对象不去重 NaN 会被忽略掉
filter + sort [/a/, /a/, "1", 1, String, 1, String, NaN, NaN, null, undefined] 对象和 NaN 不去重 数字 1 不去重
优化后的键值对方法 [1, "1", null, undefined, String, /a/, NaN] 全部去重
Set [1, "1", null, undefined, String, String, /a/, /a/, NaN] 对象不去重 NaN 去重

注:sort的方法不能去重1的原因是,排序和时候发生混乱,所以由于sort排序不可靠,因此排序方法的去重也慎用。

你可能感兴趣的:(深入学习js笔记(一、数组去重的7种方法))