(1)函数去重
function fn3(tem){
tem =tem || [];
var a = {};
for (var i=0; i<data.length; i++) {
var v = tem[i];
if (typeof(a[v]) == 'undefined'){
a[v] = 1;
}
};
data.length=0;
for (var i in a){
tem[tem.length] = i;
}
return tem;
}
console.log(fn3(arr));
(2)循环数组里面的每一项值与其索引,比较该值在数组当中第一次出现的索引是否相同,不同则截掉。
arr.forEach(function(item,index){
if(index!=arr.indexOf(item)){
delete arr[index]
}
})
console.log(arr)
(3)拿一个新数组,与新数组里面匹配,找不到再放新数组
var newArr=[];
for(var i=0;i<arr.length;i++){
if(newArr.indexOf(arr[i])==-1){
newArr.push(arr[i]);
}
}
console.log(newArr);
(4)循环拿数组里面每一元素与其后边元素比较
for(var i=0;i<arr.length;i++){
for(var j=1;j<arr.length-i;j++){
if(arr[i]==arr[i+j]){
arr.splice(i+j,1);
}
}
}
console.log(arr)
(5)利用对象的属性是唯一的
var obj={};
for(var i=0;i<arr.length;i++){
obj[ arr[i] ]=100;
}
i=0;arr.length=0;
for(var x in obj){
arr.push( Number(x) )
}
console.log(arr)