数组去重中涉及到查看数组中有没有某个元素
Javascript中有indexOf()
内置函数可以完成
indexOf()
方法
indexOf()
方法可返回某个指定的字符串值在字符串中首次出现的位置,如果要检索的字符串值没有出现,则该方法返回 -1。
indexOf()
方法对大小写敏感!
方法一、
新建一新数组,遍历传入数组,值不在新数组就push进该新数组中
var a = [1,2,2,2,9,9,7,5,2,3,5,9,5,6,5,4,2];
function qc(array){
var temp = []; //一个新的临时数组
for(var i = 0; i < array.length; i++){
if(temp.indexOf(array[i]) == -1){
temp.push(array[i]);
}
}
return temp;
}
方法二
- 给传入数组排序,排序后相同值相邻,
- 然后遍历时,新数组只加入不与前一值重复的值。
var a = [1,2,2,2,9,9,7,5,2,3,5,9,5,6,5,4,2];
function qc(array){
array.sort();
var temp=[array[0]];
for(var i = 1; i < array.length; i++){
if( array[i] !== temp[temp.length-1]){
temp.push(array[i]);
}
}
return temp;
}