Чтобы очистить содержимое div
s, рассмотрим, например, graph_container
div, содержащий svg
элемент, который, в свою очередь, содержит тысячи элементов, мы можем сделать
graph_container.innerHTML = ''
или более эффективным способом.удалить элементы - это
while (graph_container.firstChild)
graph_container.removeChild(graph_container.firstChild);
Эталоны можно найти по адресу https://jsperf.com/innerhtml-vs-removechild
Но трудно понять, почему бросание всех подэлементов, даже не глядя на них, не быстро или почему удаление всехподэлементы поэлементно лучше для DOM.
Почему DOM не может удалить ссылки на поддерево и полностью уничтожить поддерево, что, на мой взгляд, должно быть более эффективным, чем цикл while, который нельзя ни парализовать, ни выполнить за один выстрел?
РЕДАКТИРОВАТЬ: вопрос , упомянутый в комментариях, о том, как их удалить, и ответ имеет оба метода, изложенные в вопросе.Но он не говорит о том, почему один лучше другого, и не отвечает на вопрос выше.