Имеется массив с повторяющимися значениями:
Требуется написать функцию, принимающую на вход этот массив и возвращающую массив с уникальными значениями.
Решение 1:
var arr = ['banana', 'apple', 'orange', 'banana', 'tomato', 'apple'];
Требуется написать функцию, принимающую на вход этот массив и возвращающую массив с уникальными значениями.
Решение 1:
var arr = ['banana', 'apple', 'orange', 'banana', 'tomato', 'apple'];
function inArray (elem, arr) {
var pattern = new RegExp(elem);
return pattern.test(arr.toString());
}
function getUniqueArray (arr) {
var len = arr.length, i, newArray = [];
for (i = 0; i < len; i++) {
if (!inArray(arr[i], newArray)) {
newArray.push(arr[i]);
}
}
return newArray;
}
getUniqueArray(arr) //["banana", "apple", "orange", "tomato"]
В этом решении мы последовательно перебираем элементы массива. Если очередной элемент не найден в создаваемом уникальном массиве, то мы его туда добавляем.
Комментариев нет:
Отправить комментарий