@MrJobs

Как найти последний div, а все остальные удалить?

Как я могу найти последний div, а все остальные удалить?

<div id='container'>
   <div>block_1</div>
   <div>block_2</div>
   <div>block_3</div>
   <div>block_4</div>
   <div>block_5</div>
</div>
  • Вопрос задан
  • 576 просмотров
Решения вопроса 3
y0u
@y0u Куратор тега JavaScript
dev
const div = document.querySelectorAll('#container > div:not(:last-child)');
div.forEach(el => el.remove());
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
найти последний div

const last = document.querySelector('#container').lastElementChild;

остальные удалить

Array.prototype.reduceRight.call(
  document.getElementById('container').children,
  (_, n) => n?.nextElementSibling && (n.outerHTML = ''),
  null
);

Оба действия сразу:

const last = Array
  .from(document.querySelectorAll('#container > *'))
  .reduce((_, n, i, a) => i === ~-a.length ? n : n.remove(), null);
Ответ написан
Комментировать
sergiks
@sergiks Куратор тега JavaScript
♬♬
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы