思路:
1.創建一個新的數組存放結果
2.創建一個空對象
3.for循環時,每次取出一個元素與對象進行對比,如果這個元素不重複,則把它存放到結果數組中,同時把這個元素的內容作爲對象的一個屬性,並賦值爲1,存入到第2步建立的對象中。
說明:至於如何對比,就是每次從原數組中取出一個元素,然後到對象中去訪問這個屬性,如果能訪問到值,則說明重複。
Array.prototype.unique = function(){
var res = [];
var json = {};
for(var i = 0; i < this.length; i++){
if(!json[this[i]]){
res.push(this[i]);
json[this[i]] = 1;
}
}
return res;
}
var arr = [112,112,34,'你好',112,112,34,'你好','str','str1'];
console.log(arr.unique());