js数组去重的几种方法
// 数组去重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数组去重的几种方法相关推荐
- 原生JS数组去重的几种方法
有时候我们做项目的时候往往会需要把数组里面一些重复的项去掉,但是原生JS有排序,有筛选等等,但是就是没有数组去重怎么办呢? 这能怎么办,自己手动实现嘛.(以下代码直接在原型上添加的的方法,为的就是和原 ...
- js数组去重的四种方法
四种算法来实现这个目的: Array.prototype.unique1 = function () {var n = []; //一个新的临时数组for (var i = 0; i < thi ...
- js数组去重(9种方法),你都会了吗?
以下共有九种数组去重的方式和详解(包含对象数组去重): 1.利用Array.from(new Set)去重: // 1.利用set去重 // Set是es6新增的数据结构,似于数组,但它的一大特性就是 ...
- 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 ...
- js 数组去重的几种方法
1. new Set 的两种方法 let arr = [1, 0, 0, 2, 9, 8, 3, 1];function unique(arr) {return Array.from(new Set( ...
- JS — 数组去重(4种方法)
第一种:双重循环 var strCode='zxcvbnmasdfghjklopiuytrewqAWEDRFTGYHUJIK'; var str=''; for(var i=0;i<4;i++) ...
- js数组去重的6种方法
Array.prototype.unique1 = function() {var n = []; //一个新的临时数组for(var i = 0; i < this.length; i++) ...
- js 数组去重 的5种方法
一万数组,4个重复项,先贴上成绩. 1.3毫秒 2.115毫秒 3.71毫秒 4.6毫秒 1.哈希表 2.JQuery (最快的方法是用JQuery 这句话是截图带的... 实际上Jq是最慢的) 3. ...
- js数组去重的10种方法
Methods 1: 思路:定义一个新数组,并存放原数组的第一个元素,然后将元素组一一和新数组的元素对比,若不同则存放在新数组中. function unique(arr) {let newArr = ...
最新文章
- 单tomcat多实例的实现
- leetcode 153. Find Minimum in Rotated Sorted Array | 153. 寻找旋转排序数组中的最小值(二分查找)
- JS读取嵌套的JSON数据
- 跟我学ModelArts丨探索ModelArts平台个性化联邦学习API
- linux下启动nfs服务,linux下Samba服务和NFS服务配置的方法
- 中国松紧带市场趋势报告、技术动态创新及市场预测
- 应该如何理解mobx_如何使用mobx观察observable数组上的object.property更改
- Wonderware Historian 2017安装,资料
- Java随机数的使用
- 2019年保研夏令营复试经验分享(浙大软件/南大软件/南航计算机)
- IOS逆向需用到的工具汇总
- 沟通类书籍推荐,这6本书助力你提高自身沟通能力
- vnc远程控制软件官网,vnc远程控制软件官网下载,好物推荐
- 重构改善既有的代码设计(代码的坏味道)
- [内附完整源码和文档] 基于VS2013实现的弹弹堂小游戏
- django里template中的书名号
- Mac 电脑下载 AppStore 中的 ipa 软件包详细流程
- 如何提高C语言程序的可读性
- url 里面 等号_【Python成长之路】从零学爬虫给微信公众号阅读量作个弊:刷阅读量...
- 【论文】AlexNet 一