array_unique() на JavaScript
Как выкинуть все дубликаты из массива? На PHP есть специальная функция array_unique(), а JavaScript такими излишествами не изобилует.
Поэтому я нафантазировал такое решение:
- создаём объект;
- проходим по массиву и добавляем в этот объект новые поля (свойства), одноимённые очередным значениям массива. Поскольку двух полей с одинаковыми именами у объекта быть не может, дубликаты "схлопнутся", перезатрут друг друга;
- проходим по полям объекта и создаём из них массив.
function array_unique(arr)
{
var vic = new Object();
for(i=0; i < arr.length; i++)
vic[arr[i]] = "";
arr = new Array();
for(i in vic)
arr[arr.length] = i;
return arr;
}
0 комментов:
Отправить комментарий