Их штук 100.
Мне надо удалить дубликаты, подскажите как сделать?
Я знаю как определить дубликаты через конвертацию в Array, но мне надо работать напрямую с DOM, чтобы удалить ненужные элементы. А ID у них нету, чтобы удалить дубликаты, а затем полагаясь на Array удалить их из DOM
Ну так проходитесь и записывайте ваши данные, при следующем элементе смотрите есть ли уже ключ такой в хранилище если есть то удалить ноду если нет сохранить новый ключик
Ну допустим если я использую цикл for напрямую, и удалю element, то весь цикл сломается, так как кол-во списка изменилось
Можете ноды которые вам надо удалить сразу занести в отдельный массив NodeList и просто потом по нему пройтись и удалить всё
Точно спасибо))
А как вы их удаляете? Если вы сперва собрали список нод, а потом прошлись циклом и удалили их из ДОМа, то длина списка не должна измениться - ведь там будут ссылки на ноды.
Предложишь свой вариант или только будет оценка?🌚
Таки N же
Можно упростить код?
По идее длина не должна измениться
Вообще плохо непосредственно с домом работать
function deleteFromNodeList(nodelist, predicate) { let size = nodelist.length; for (let i = 0; i <= size; i++) { if (predicate(nodelist[i])) { nodelist.item(i).remove() } size = nodelist.length } }
Обсуждают сегодня