利用对象的思想,对象的一个属性是唯一的,如果对象里没有这个属性的话,就放入这个属性,即为true.
var arr = [1,1,2,3,0,3,3,3,3,4,4,5]
function removal(arr){
var obj = {},
arrData = [],
len = arr.length
for(var i = 0; i < len; i++){
if(!obj[arr[i]]){
obj[arr[i]] = true,
arrData.push(arr[i])
}
}
return arrData
}
console.log(removal(arr)) //[1, 2, 3, 0, 4, 5]
ES6写法,代码比较简单,缺点是:IE浏览器不支持
function removal(arr){
return Array.from(new Set(arr))
}
var arr = [2,2,3,4,0,4,5,4,5]
console.log(removal(arr)) //[2, 3, 4, 0, 5]