Как-то раз потребовалось мне сделать массив из уникальных элементов на javascript. Искренне веруя в мощь jQuery, я принялся искать необходимую возможность в мануале, но так ничего полезного и не нашел. Т.к. возможность сия была мне крайне необходима, пришлось написать функцию самому.
unique — возвращает новый массив, состоящий из уникальных эллементов;
contains — проверяет наличие заданного элемента в массиве. Вообще, эта функция необходима для работы первой, но может быть использована и отдельно.
Вот пожалуй и все :)
P.S.
Если нечто подобное уже появлялось на Хабре, то прошу написать об этом в комментах. Так же с удовольствием почитаю ваши пожелания и предложения.
Array.prototype.unique = function() {
var nArray = new Array;
for(i=0;i<=this.length-1;i++) {
if(!nArray.contains(this[i])) {
nArray.length+=1;
nArray[nArray.length-1] = this[i];
}
}
return nArray;
}
Array.prototype.contains = function(val) {
for(j=0;j<=this.length-1;j++) {
if(this[j] == val) return true;
}
return false;
}* This source code was highlighted with Source Code Highlighter.
unique — возвращает новый массив, состоящий из уникальных эллементов;
contains — проверяет наличие заданного элемента в массиве. Вообще, эта функция необходима для работы первой, но может быть использована и отдельно.
Вот пожалуй и все :)
P.S.
Если нечто подобное уже появлялось на Хабре, то прошу написать об этом в комментах. Так же с удовольствием почитаю ваши пожелания и предложения.