Possible Duplicate:
Remove duplicates from an array of objects in javascript
I'm trying to remove any duplicates in an array. For example if I have 112233 I want to return only 123.
My code:
function array_unique(array) {
var array_length = array.length;
var new_array = [];
for (var i = 0; i < array_length; i++) {
if (array[i] == array[i + 1]) {
}
new_array.push(array[i]);
}
return new_array;
}
I don't know what to type in the if so I can remove the doubles
Here you can remove the duplicates with complexity O(n).
var elems = {},
arr = [1,2,1,1,2,3,3,3,3,4];
arr = arr.filter(function (e) {
if (elems[e] === undefined) {
elems[e] = true;
return true;
}
return false;
});
I use the elems hash (object) to remember all already existing elements. If the current element is a key in the elems hash I just filter it.
Use prototype for Array like this
Array.prototype.removeDups = function(){
var local_array = this;
return local_array.filter(function(elem, pos) {
return local_array.indexOf(elem) == pos;
});
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With