码迷,mamicode.com
首页 > 编程语言 > 详细

一起又双叒叕看数组去重

时间:2016-07-01 16:18:49      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:

  正所谓“一山不容二虎,一渊不藏两蛟”,在某些“矫情”的需求中,数组中不能存在重复的元素,于是就有了对数组去重方法的讨论,关于数组去重的方法由来已久,我当然也想不出什么原创的方法了,这里只是简单的总结一下以备忘。

  不过,我们要先声明一下,上面的这句强行组成的谚语还有下一句叫做“除非一公一母” 技术分享技术分享;也就是说如果是一公一母的两个元素是可以同时存在的,为了避免混淆,这里规定元素之间的比较为严格相等,个元素通过 === 比较返回 true 的视为相同元素,需要去重。“Baby,你就是我的唯一”接下来我们统一一下函数风格。函数名为unique,接受参数为数组,返回的参数也为数组。好了接下来一一列举我抄袭的数组去重方法。

Solution1

思路:
  1. 双层循环,外层循环待去重数组,内层循环检查结果数组

  2. 如果在结果数组中有相同的值则跳过,不相同则push进结果数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function unique(arr) {
  var result = [];
  for (var i = 0, alen = arr.length; i < alen; i++) {
    var item = arr[i];
    for (var j = 0,  rlen= result.length; j < rlen; j++) {
      if (result[j] ===item)
        break;
    }
    if (j === rlen)//如果遍历完结果数组还没找到,说明不是重复的元素
      result.push(item);
  }
  return result;
}
var arr=[2,8,6,‘2‘,5,6,4,5,8,4,6];
console.log(unique(arr));//[ 2, 8, 6, ‘2‘, 5, 4 ]

 

 
 

 





一起又双叒叕看数组去重

标签:

原文地址:http://www.cnblogs.com/star91/p/5633287.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!