This time I will show you how to implement the array deduplication algorithm in JS. What are theprecautions for implementing the array deduplication algorithm in JS? The following is a practical case, let's take a look.
Test case:arr = ["1",3,"1",1,4,5,1,"2",5,1,{"name ":"li","age":20},2,4,3,{"name":"li","age":20},""];
Method 1: With the help of temporary array and indexOf,The algorithm complexity is:O(n^2)
function unique1(arr){ var temp = []; for(var i=0; i Copy after login
unique1(arr): ["1", 3, 1, 4, 5, "2", Object { name="li", age=20}, 2, Object { name="li", age=20}, ""]bug Unable to distinguish objects
Method 2: UseObject objectinJavaScriptas Ha Greek table
function unique2(arr){ var temp=[]; var hash={}; for(var i=0; i Copy after login
unique2(arr): ["1", 3, 4, 5, "2", Object { name="li ", age=20}, ""]bug: Unable to distinguish: 1 and "1" Modification
function unique2(arr){ var temp=[]; var hash={}; for(var i=0; i Copy after login
unique2(arr): ["1", 3, 1, 4, 5, "2", Object { name="li", age=20}, 2, ""]
Method 3: First use sort to sort thearray, and then use a temporary array to store the last one of the same element. This method can only be used for pure Number type arrays
function unique3(arr){ arr.sort(function(a,b){ return a-b; }); var temp = []; for(var i=0;i Copy after login
How to use Vue better-scroll to implement alphabetical index navigation
How to implement Vue WeChat project on demand Authorized login
The above is the detailed content of How to implement array deduplication algorithm in JS. For more information, please follow other related articles on the PHP Chinese website!