方法一:
function unique(array){
var temp = [];
for(var i = 0; i < array.length; i++){
//判断临时数组是否有该数组元素存在,不存在则放入
if(temp.indexOf(array[i]) == -1){
temp.push(array[i]);
}
}
return temp;
}
var array = [1,2,2,4,9,6,7,5,2,3,5,6,5];
console.log(unique(array));
方法二:
function unique(arr) {
arr.sort();
var temp = [arr[0]];
for(var i = 1; i < arr.length; i ++) {
// 判断遍历的元素和临时数组最后一个元素是否相同,
if (arr[i] !== temp[temp.length-1]) {
temp.push(arr[i]); // 如果不相同,那就push到临时数组
}
}
return temp; // 返回临时数组
}
var arr = [1,2,2,4,9,6,7,5,2,3,5,6,5];
console.log(unique(arr));
方法三:
function unique(arr) {
var temp = [arr[0]];
for(var i = 1; i < arr.length; i++) {
//判断第i项元素是否在临时数组中第一次出现的位置是i,
if (arr.indexOf(arr[i]) == i) { // 如果不是i,表示是重复项
temp.push(arr[i]); // 如果是i,就push元素到临时数组中
}
}
return temp;
}
var arr = [1,2,2,4,9,6,7,5,2,3,5,6,5];
console.log(unique(arr));
方法四:
function unique(arr){
arr.sort();
var temp = [];
for(var i = 0; i < arr.length; i++) {
for(var j = i + 1; j < arr.length; j++){
if (arr[i] === arr[j]){
i++;
j = i;
}
}
temp.push(arr[i]);
}
return temp;
}
var arr = [1,2,2,4,9,6,7,5,2,3,5,6,5];
console.log(unique(arr));