老莫的笔记本  
  
查看: 1069|回复: 0

常见的数组去重

[复制链接]

664

主题

880

帖子

5155

积分

超级版主

Rank: 8Rank: 8

积分
5155
发表于 2018-10-18 11:29:39 | 显示全部楼层 |阅读模式
参考文献:https://www.cnblogs.com/baiyangyuanzi/p/6726258.html
我当时采用的方法是双循环:
  1. // 思路:获取没重复的最右一值放入新数组
  2. /*
  3. * 推荐的方法
  4. *
  5. * 方法的实现代码相当酷炫,
  6. * 实现思路:获取没重复的最右一值放入新数组。
  7. * (检测到有重复值时终止当前循环同时进入顶层循环的下一轮判断)*/
  8. function uniq(array){
  9.     var temp = [];
  10.     var index = [];
  11.     var l = array.length;
  12.     for(var i = 0; i < l; i++) {
  13.         for(var j = i + 1; j < l; j++){
  14.             if (array[i] === array[j]){
  15.                 i++;
  16.                 j = i;
  17.             }
  18.         }
  19.         temp.push(array[i]);
  20.         index.push(i);
  21.     }
  22.     console.log(index);
  23.     return temp;
  24. }
  25. var aa = [1,2,2,3,5,3,6,5];
  26. console.log(uniq(aa));
复制代码

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表