数组去重常用方法

1、遍历数组法(最简单)

function unique1(array){

  var str1=[];//建立一个空数组,装不重复的值

  for (var i=0;i<array.length;i++){

    if(str1.indexOf(array[i])==-1){

      str1.push(array[i])

    }

  }

  return str1;

}

2、先排序相邻去除法

function unique2(array){

  array.sort();//先对数组进行排序

  var str2=[array[0]];

  for(var i=0;i<array.length;i++){

    if(array[i]!==str2[str2.length-1]){

      str2.push(array[i])

    }

  }

  return str2;

}

3、对象键值对法

function unique3(array){

  var str3=[],obj={};

  for(var i=0;i<array.length;i++){

    if(!obj[array[i]]){

      str3.push(array[i]);

      obj[array[i]]=1;

    }

  }

  return str3

}

原文地址:https://www.cnblogs.com/wangpengfei8313/p/8287869.html