Карточка Junior DOM API обновлено
Живая и статичная коллекция
Вопрос
Живая и статичная коллекция узлов: в чём разница и кто что возвращает?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Живая (HTMLCollection от getElementsByClassName, getElementsByTagName, свойство children) сама обновляется при изменении DOM. Статичная (NodeList от querySelectorAll) это снимок на момент вызова.
Ответ
Живая (HTMLCollection от getElementsByClassName, getElementsByTagName, свойство children) сама обновляется при изменении DOM. Статичная (NodeList от querySelectorAll) это снимок на момент вызова. Свойство childNodes тоже живое, хоть это и NodeList.
Разбор
Живые коллекции ломают циклы с удалением элементов: индексы сдвигаются. Перед изменениями удобно сделать снимок через Array.from.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.