Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

написал на js код чтоб удалял повторяющиеся элементы в массиве

fdgsfgdfg sdfgsdfgdsfg Знаток (324), закрыт 4 года назад
Знаю что так не делается и есть лучший способ при помощи фильтрации но это я так для себя писал посмотрите код https://jsfiddle.net/8crfspmL/3/ и скажите вы понимаете мою писанину код гaвно знаю однозначно но если бы я был вашей коллегой и вы открыли этот код чё бы сказали ?
Лучший ответ
Алиса Алтуфьева Ученик (180) 4 года назад
я не хожу по левым ссылкам
выложи сюда
Остальные ответы
Petr Muhurov Мыслитель (5922) 4 года назад
я бы сказал, не нужно страдать фигней и изобретать велосипед, юзай filter/reduce, тем более, что твой код справедлив только для массива с примитивами
fdgsfgdfg sdfgsdfgdsfgЗнаток (324) 4 года назад
Знаю что не нужно делать велосипед. Но я это делаю чтоб освоить приемам программирования
Petr Muhurov Мыслитель (5922) чтобы освоить приемы программирования, нужно изучать нативные возможности языка и решать прикладные задачи
Юрий Гагарин Гуру (3761) 4 года назад
let autoBrands = ['BMW', 'Mercedes-Benz', 'Acura', 'BMW', 'Alfa Romeo', 'BMW', 'Acura', 'Bugatti'];

autoBrands = Array.from([...new Set([...autoBrands])])

:)
Petr MuhurovМыслитель (5922) 4 года назад
а почему не написали
let autoBrands = [...['BMW', 'Mercedes-Benz', 'Acura', 'BMW', 'Alfa Romeo', 'BMW', 'Acura', 'Bugatti']];
?
Юрий Гагарин Гуру (3761) let autoBrands = [...['BMW', 'Mercedes-Benz', 'Acura', 'BMW', 'Alfa Romeo', 'BMW', 'Acura', 'Bugatti']]; написал))
Сергей Жаков Мудрец (16208) 4 года назад
вот примерчик

var items = [4,5,4,6,3,4,5,2,23,1,4,4,4]
var uniqueItems = Array.from(new Set(items))

https://stackoverflow.com/questions/1960473/get-all-unique-values-in-a-javascript-array-remove-duplicates

или если не нравится короткий пример
здесь алгоритм
https://javascript.ru/php/array_unique
Молот Шотландцев Высший разум (300965) 4 года назад
Длинно и заумно, но работает
>>>
var a = [5,8,4,3,9,5,1,6,3,5,2,8,7,4,5,3,0,5,6,6];
console.log(a);
var b = [];
for (var i = 0; i < a.length; i++) {
for (var j = 0; j < a.length; j++) {
if (i == j) {
continue;
}
if (a[i]==a[j]) {
b.push(a[i]);
var n = a[i];
}
for (var k = 0; k < a.length; k++) {
if (a[k] == n) {
a.splice(k, 1);
}
};
};
};
console.log('не повторяются ' + a);
console.log('повторяются ' + b);
____
5,8,4,3,9,5,1,6,3,5,2,8,7,4,5,3,0,5,6,6
не повторяются 9,1,2,7,0
повторяются 5,8,3,6,4
Похожие вопросы