Top.Mail.Ru
Ответы
Аватар пользователя
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Как представить набор div элементов массивом js

Есть несколько div элементов, которые нужно удалить.
Есть левая колонка и правая, как их удалить?
Попробовал написать функцию, но не понимаю до конца

1
 function clear(left, right) {   for (let i = 1; i < left.length && right.length; i++) {     left.remove();     right.remove();   } } 
Дополнен

Первый элемент не нужно трогать

По дате
По рейтингу
Аватар пользователя
Искусственный Интеллект

Ты покажи код HTML и отметь, что нужно удалить. Тут миллион вариантов от банальной выборки с помощью функции nth-child, которую поддерживает js, до такой же банальной фильтрации с минус один и/или конструкцией if else.
А преобразовать в массив элементы очень легко, нужно просто использовать спреад ([...elements]) или Array.from(elements)... только что тебе это даст, если тот же forEach, которого более чем хватает для перебора элементов, поддерживает node-коллекции. Да и for обычный тоже... но из твоего примера кода мало что понятно.

Например, есть такое DOM-дерево...

1234567
 <div class="div-container"> 
   <div>Текст 1</div> 
   <div>Текст 2</div> 
   <div>Текст 3</div> 
   <div>Текст 4</div> 
   <div>Текст 5</div> 
</div> 

Проходимся обратным циклом по всем элементам до -1 и удаляем...

12345
 let element = document.querySelectorAll('.div-container > div') 
 
for (let i = element.length-1; 0 < i; i--) { 
   element[i].remove(); 
} 

В итоге останется только самый первый элемент в коллекции.