果玩软件园:为用户提供海量热门软件、游戏等手机资源下载服务!

装机必备热门标签玩游戏装软件BT游戏H5游戏看教程专题游戏盒子手机版

果玩软件园

所在位置:首页 > 资讯教程 > 软件教程 >  > 详情

js数组去重怎么操作?js数组去重的六个操作方法

文章来源:网络作者:何必等发布时间:2026-05-28 00:14:34

GM盒子
GM盒子(高返利版)
GM手游福利平台,免费送首充,上线送VIP,免费领元宝和代金券。
Readyjs数组去重怎么操作?今天winwin7小编在本文中将给大家总结一下js数组中去重的几个有效使用的操作方法~!

方法一:利用ES6的set Set数据结构,它类似于数组,其成员的值都是唯一的。 利用Array.from将Set结构转换成数组 function dedupe(array){ return Array.from(new Set(array));}dedupe([1,1,2,3]) //[1,2,3] 拓展运算符(...)内部使用for...of循环 let arr = [1,2,3,3];let resultarr = [...new Set(arr)]; console.log(resultarr); //[1,2,3]
方法二:利用indexOf以及forEach

Array.prototype.distinct = function (){ var arr = this,  result = [],  len = arr.length; arr.forEach(function(v, i ,arr){  //这里利用map,filter方法也可以实现  var bool = arr.indexOf(v,i+1);  //从传入参数的下一个索引值开始寻找是否存在重复  if(bool === -1){   result.push(v);  } }) return result;};var a = [1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,3,2,3,3,2,2,1,23,1,23,2,3,2,3,2,3];var b = a.distinct();console.log(b.toString()); //1,23,2,3
方法三:数组递归去重

Array.prototype.distinct = function (){ var arr = this,  len = arr.length; arr.sort(function(a,b){  //对数组进行排序才能方便比较  return a - b; }) function loop(index){  if(index >= 1){   if(arr[index] === arr[index-1]){    arr.splice(index,1);   }   loop(index - 1); //递归loop函数进行去重  } } loop(len-1); return arr;};var a = [1,2,3,4,5,6,5,3,2,4,56,4,1,2,1,1,1,1,1,1,56,45,56];var b = a.distinct();console.log(b.toString());  //1,2,3,4,5,6,45,56
方法四:利用对象的属性不能相同的特点进行去重

Array.prototype.distinct = function (){ var arr = this,  i,  obj = {},  result = [],  len = arr.length; for(i = 0; i< arr.length; i++){  if(!obj[arr[i]]){ //如果能查找到,证明数组元素重复了   obj[arr[i]] = 1;   result.push(arr[i]);  } } return result;};var a = [1,2,3,4,5,6,5,3,2,4,56,4,1,2,1,1,1,1,1,1,];var b = a.distinct();console.log(b.toString()); //1,2,3,4,5,6,56
方法五:利用splice直接在原数组进行操作

Array.prototype.distinct = function (){ var arr = this,  i,  j,  len = arr.length; for(i = 0; i < len; i++){  for(j = i + 1; j < len; j++){   if(arr[i] == arr[j]){    arr.splice(j,1);    len--;    j--;   }  } } return arr;};var a = [1,2,3,4,5,6,5,3,2,4,56,4,1,2,1,1,1,1,1,1,];var b = a.distinct();console.log(b.toString()); //1,2,3,4,5,6,56
方法六:
Array.prototype.distinct = function(){ var arr = this,  result = [],  i,  j,  len = arr.length; for(i = 0; i < len; i++){  for(j = i + 1; j < len; j++){   if(arr[i] === arr[j]){    j = ++i;   }  }  result.push(arr[i]); } return result;}var arra = [1,2,3,4,4,1,1,2,1,1,1];arra.distinct();    //返回[3,4,2,1]
关于js数组去重如何操作就给大家介绍到这里,不知道大家是否有什么疑问,若有的话可以在留言区进行留言小编将给大家进行回复解决!End
复制本文链接资讯文章为果玩软件园所有,未经允许不得转载。
热门游戏MORE+
相关资讯MORE+
最新录入
热门资讯
新游新品榜
手机游戏
休闲益智
赛车竞速
棋牌桌游
角色扮演
动作射击
体育竞技
经营养成
策略塔防
冒险解谜
音乐游戏
手游辅助
H5游戏
BT游戏
手机软件
社交聊天
系统工具
时尚购物
旅游出行
影音播放
生活实用
办公学习
资讯阅读
拍摄美化
游戏辅助
健康医疗
地图导航
小说漫画
安全防护
育儿亲子
手游下载
梦想三国之勇往直前0....
炼仙传说0.1折
不可思议的刀剑与魔法...
逍遥浪人
奇幻梦旅人
玄影0.1折
点击冒险之旅(0.1折特...
天神赵子龙0.1折
九州异兽记0.1折
龙魂魔法0.1折
装机软件
爱奇艺电脑版
Steam下载管家 2026最...
360游戏大厅
GoLink加速器
3DM驱动大师
夸克
豆包电脑版
360C盘扩容大师
360录屏
360极速浏览器
精选专题
手机游戏专题
手机软件专题
电脑软件专题
电脑游戏专题
游戏排行榜
手游排行榜
软件排行榜
BT排行榜
电脑软件排行榜
电脑游戏排行榜