// 数组去重1:var arr = [1, 6, 6, 6, 3, 9, 4, 9, 3, 8, 2, 2]var newArr = []console.log(arr, '原数组');var flagfor (let i = 0; i < arr.length; i++) {flag = truefor (let j = i + 1; j < arr.length; j++) {if (arr[i] === arr[j]) {flag = false}}if (flag) newArr.push(arr[i])}console.log(newArr);// 数组去重2// Set 是唯一值的集合。每个值在 Set 中只能出现一次。一个 Set 可以容纳任何数据类型的任何值var arr = [1, 6, 3, 9, 4, 9, 3, 8, 2]function getUniqueArray2() {var result = Array.from(new Set(arr))console.log(result);}getUniqueArray2()// 数组去重3// res.indexOf(item) 查找result里是否存在item,不存在则返回-1,存在则返回下标var arr = [1, 6, 3, 9, 4, 9, 3, 8, 2]function getUniqueArray3() {var result = []arr.forEach((item) => {// console.log(result.indexOf(item));if (result.indexOf(item) === -1) result.push(item)})console.log(result);}getUniqueArray3()// 数组去重4// res.indexOf(item) 查找result里是否存在item,不存在则返回-1,存在则返回下标// indexOf查找的是第一个 item 的索引var arr = [1, 6, 3, 9, 4, 9, 3, 8, 2]function getUniqueArray4() {var result = arr.filter((item, index) => {return arr.indexOf(item) === index})console.log(result);}getUniqueArray4()// 数组去重5//  arr.reduce((pre:上一次返回的结果,item) => { }, 初始值)//  reduce 回调函数中第一个参数就是上次返回的那个结果(或初始设置的)var arr = [1, 6, 3, 9, 4, 9, 3, 8, 2]function getUniqueArray5() {var result = arr.reduce((pre, item) => {return pre.includes(item) ? pre : [...pre, item] // pre.push(item) 类数组,不能push ?}, [])console.log(result);}getUniqueArray5()// 数组去重6//  Object.keys(result)  获取对象里的所有索引// var arr = [1, 6, 3, 9, 4, 9, 3, 8, 2]function getUniqueArray6() {var result = {}arr.forEach((item, index) => {result[arr[index]] = item});result = Object.keys(result).map(item => item - 0)console.log(result);}getUniqueArray6()

js数组去重的几种方法相关推荐

  1. 原生JS数组去重的几种方法

    有时候我们做项目的时候往往会需要把数组里面一些重复的项去掉,但是原生JS有排序,有筛选等等,但是就是没有数组去重怎么办呢? 这能怎么办,自己手动实现嘛.(以下代码直接在原型上添加的的方法,为的就是和原 ...

  2. js数组去重的四种方法

    四种算法来实现这个目的: Array.prototype.unique1 = function () {var n = []; //一个新的临时数组for (var i = 0; i < thi ...

  3. js数组去重(9种方法),你都会了吗?

    以下共有九种数组去重的方式和详解(包含对象数组去重): 1.利用Array.from(new Set)去重: // 1.利用set去重 // Set是es6新增的数据结构,似于数组,但它的一大特性就是 ...

  4. js数组 去重的5种方法

    // 数组去重 var arr = [1, 2, 2, 3, 4, 4, 5, 6, 7, 7, 4, 3, 5, 7, 11, 12, 11]; var newArr = [];//方法1最优 se ...

  5. js 数组去重的几种方法

    1. new Set 的两种方法 let arr = [1, 0, 0, 2, 9, 8, 3, 1];function unique(arr) {return Array.from(new Set( ...

  6. JS — 数组去重(4种方法)

    第一种:双重循环 var strCode='zxcvbnmasdfghjklopiuytrewqAWEDRFTGYHUJIK'; var str=''; for(var i=0;i<4;i++) ...

  7. js数组去重的6种方法

    Array.prototype.unique1 = function() {var n = []; //一个新的临时数组for(var i = 0; i < this.length; i++) ...

  8. js 数组去重 的5种方法

    一万数组,4个重复项,先贴上成绩. 1.3毫秒 2.115毫秒 3.71毫秒 4.6毫秒 1.哈希表 2.JQuery (最快的方法是用JQuery 这句话是截图带的... 实际上Jq是最慢的) 3. ...

  9. js数组去重的10种方法

    Methods 1: 思路:定义一个新数组,并存放原数组的第一个元素,然后将元素组一一和新数组的元素对比,若不同则存放在新数组中. function unique(arr) {let newArr = ...

最新文章

  1. 单tomcat多实例的实现
  2. leetcode 153. Find Minimum in Rotated Sorted Array | 153. 寻找旋转排序数组中的最小值(二分查找)
  3. JS读取嵌套的JSON数据
  4. 跟我学ModelArts丨探索ModelArts平台个性化联邦学习API
  5. linux下启动nfs服务,linux下Samba服务和NFS服务配置的方法
  6. 中国松紧带市场趋势报告、技术动态创新及市场预测
  7. 应该如何理解mobx_如何使用mobx观察observable数组上的object.property更改
  8. Wonderware Historian 2017安装,资料
  9. Java随机数的使用
  10. 2019年保研夏令营复试经验分享(浙大软件/南大软件/南航计算机)
  11. IOS逆向需用到的工具汇总
  12. 沟通类书籍推荐,这6本书助力你提高自身沟通能力
  13. vnc远程控制软件官网,vnc远程控制软件官网下载,好物推荐
  14. 重构改善既有的代码设计(代码的坏味道)
  15. [内附完整源码和文档] 基于VS2013实现的弹弹堂小游戏
  16. django里template中的书名号
  17. Mac 电脑下载 AppStore 中的 ipa 软件包详细流程
  18. 如何提高C语言程序的可读性
  19. url 里面 等号_【Python成长之路】从零学爬虫给微信公众号阅读量作个弊:刷阅读量...
  20. 【论文】AlexNet 一

热门文章

  1. Ubuntu版本 AndroidStudio 中搜狗输入法不跟随焦点
  2. Windows 11正式版终于发布,最低配置要求来了
  3. WebUploader asp.net 多文件上传
  4. ArcGIS server 常见问题
  5. 华侨大学复杂美产教融合
  6. CentOS 7中文输入法安装教程
  7. 2022年自考专业(法律)法律文书写作练习题
  8. Github优秀的开源框架介绍
  9. RESTful API 设计、文档生成、测试
  10. java 登录牵手_昔日宿敌 英特尔和Sun今在Java上牵手