В чем отличие document.querySelectorAll() от document.getElementsByClassName()?
Если выводить в консоль то коллекции не чем не отличаются.
Это не так. В первом случае HTMLCollection, во втором NodeList. Отличие первой от второго состоит в том, чтоHTMLCollection, хранящая элементы DOM, является динамической. При изменении документа она моментально отражает все произведённые изменения.
То есть, обходите коллекцию, и одновременно модифицируете её. Удалили нулевой элемент - на его место встал первый, а индексу сделали ++. На следующей итерации удалять будете первый, и новый нулевой / бывший первый уже никуда не денется. Как и остальные элементы, изначально имевшие нечётные индексы.
Если выводить в консоль то коллекции не чем не отличаются.
Это не так. В первом случае HTMLCollection, во втором NodeList. Отличие первой от второго состоит в том, чтоHTMLCollection, хранящая элементы DOM, является динамической. При изменении документа она моментально отражает все произведённые изменения.
То есть, обходите коллекцию, и одновременно модифицируете её. Удалили нулевой элемент - на его место встал первый, а индексу сделали ++. На следующей итерации удалять будете первый, и новый нулевой / бывший первый уже никуда не денется. Как и остальные элементы, изначально имевшие нечётные индексы.