1.indexOf
function f(arr){
var temp=[arr[0]];//临时数组
var i=1;
for(;i<arr.length;i++){
if(temp.indexOf(arr[i])==-1){//判断是否在临时数组中
temp.push(arr[i]);
}
}
return temp;
}
var arr=[2,3,4,5,4,3,1,100];
console.log(f(arr));
2.哈希数组
function f(arr){
var temp=[];//临时数组
var hash=[];//哈希数组
var i=0;
for(;i<arr.length;i++){
if(!hash[arr[i]]){
temp.push(arr[i]);
hash[arr[i]]=true;
}
}
return temp;
}
var arr=[2,3,4,5,4,3,1,100];
console.log(f(arr));
3.indexOf
function f(arr){
var temp=[];
var i=0;
for(;i<arr.length;i++){
if(arr.indexOf(arr[i])==i){//判断第i项的数第一次出现的位置是否为i
temp.push(arr[i]);
}
}
return temp;
}
var arr=[2,3,4,5,4,3,1,100];
console.log(f(arr));
4.比较相邻值是否相同
function f(arr){
var i;
arr.sort();
var temp=[arr[0]];
for(i=0;i<arr.length-1;i++){
if(arr[i]!=arr[i+1]){//比较相邻值是否相同
temp.push(arr[i+1]);
}
}
return temp;
}
var arr=[2,3,4,5,4,3,1,100];
console.log(f(arr));