思路:
1.構建乙個新的陣列存放結果
2.for迴圈中每次從原陣列中取出乙個元素,用這個元素迴圈與結果陣列對比
3.若結果陣列中沒有該元素,則存到結果陣列中
array.prototype.unique1 = function()思路:} if(!repeat)
} return res;
}var arr = [1, 'a', 'a', 'b', 'd', 'e', 'e', 1, 0]
alert(arr.unique1());
1.先將原陣列進行排序
2.檢查原陣列中的第i個元素 與 結果陣列中的最後乙個元素是否相同,因為已經排序,所以重複元素會在相鄰位置
3.如果不相同,則將該元素存入結果陣列中
array.prototype.unique2 = function()第二種方法也會有一定的侷限性,因為在去重前進行了排序,所以最後返回的去重結果也是排序後的。如果要求不改變陣列的順序去重,那這種方法便不可取了。} return res;
}var arr = [1, 'a', 'a', 'b', 'd', 'e', 'e', 1, 0]
alert(arr.unique2());
思路:1.建立乙個新的陣列存放結果
2.建立乙個空物件
3.for迴圈時,每次取出乙個元素與物件進行對比,如果這個元素不重複,則把它存放到結果陣列中,同時把這個元素的內容作為物件的乙個屬性,並賦值為1,存入到第2步建立的物件中。
說明:至於如何對比,就是每次從原陣列中取出乙個元素,然後到物件中去訪問這個屬性,如果能訪問到值,則說明重複。
array.prototype.unique3 = function();for(var i = 0; i < this.length; i++)
} return res;
}var arr = [112,112,34,'你好',112,112,34,'你好','str','str1'];
alert(arr.unique3());
參考
三種常用的js陣列去重方法
思路 1.構建乙個新的陣列存放結果 2.for迴圈中每次從原陣列中取出乙個元素,用這個元素迴圈與結果陣列對比 3.若結果陣列中沒有該元素,則存到結果陣列中 array.prototype.unique1 function if repeat return res var arr 1,a a b d ...
三種常用的js陣列去重方法
思路 1.構建乙個新的陣列存放結果 2.for迴圈中每次從原陣列中取出乙個元素,用這個元素迴圈與結果陣列對比 3.若結果陣列中沒有該元素,則存到結果陣列中 array.prototype.unique1 function if repeat return res var arr 1,a a b d ...
js陣列去重的三種常用方法總結
本篇文章主要是對js陣列去重的三種常用方法進行了總結介紹,需要的朋友可以過來參考下,希望對大家有所幫助 第一種是比較常規的方法 思路 1.構建乙個新的陣列存放結果 2.for迴圈中每次從原陣列中取出乙個元素,用這個元素迴圈與結果陣列對比 3.若結果陣列中沒有該元素,則存到結果陣列中 複製 如下 ar...