ES6,ES5数组去重

  • 使用Es6进行数组去重

    var arr = [false, true, undefined, null, NaN, 0, 1, {}, {}, 'a', 'a', NaN];

    var set = new Set(arr);

    var uniqArr = Array.from(set)

因为NaN == NaN会返回,false,Es6不用区分这一点

  • 使用Es5进行数组去重
    Array.prototype.uniq = function() {
var arr = [];
var flag = true;` this.forEach(function(item) {
if (item !== item) {
flag && arr.indexOf(item) === -1 ? arr.push(item) : ""
flag = false
} else {
arr.indexOf(item) === -1 ? arr.push(item) : ""
}
})
return arr
} var testArr = [false, true, undefined, null, NaN, 0, 1, {}, {}, 'a', 'a', NaN]
testArr.uniq()

最新文章

  1. 《Note --- Unreal 4 --- B project --- Second UV issue》
  2. NAT技术
  3. iOS 学习 - 10下载(2) NSURLSession 图片 篇
  4. js 区分数据类型
  5. 关于TCP/IP的三次握手和四次挥手解释
  6. WPF 屏蔽Alt+F4强制退出
  7. eclipse设置系统字体
  8. DataReader To List
  9. 关于在Idea 创建Maven项目时,无法在source文件下创建servlet文件问题解决!
  10. HttpServletResponse ServletResponse 返回响应 设置响应头设置响应正文体 重定向 常用方法 如何重定向 响应编码 响应乱码
  11. redis 简单的注册
  12. 2018-2019-2 《网络对抗技术》Exp2 后门原理与实践
  13. Actifio OnVault 8.0
  14. MongoDB的数据备份与恢复
  15. Apollo 代码的编译演示
  16. 浅谈JS的数组遍历方法
  17. [others] 一个酷酷的站
  18. hdu 2066 ( 最短路) Floyd & Dijkstra & Spfa
  19. HDU 3407.Zjnu Stadium 加权并查集
  20. shell如何传递变量到另一个脚本文件中

热门文章

  1. javascript笔记(二)
  2. mybatis学习第(一)天
  3. Javascript-- jQuery DOM篇(一)
  4. 07 - Django应用第四步
  5. Struts2 - ModelDriven 拦截器、Preparable 拦截器
  6. 转载 解决Android与服务器交互大容量数据问题
  7. 树套树Day2
  8. ACM学习历程—POJ3565 Ants(最佳匹配KM算法)
  9. [转]阮一峰:理解RESTful架构
  10. poj 1637 Sightseeing tour —— 最大流+欧拉回路