Разлика помеѓу типовите на псевдо-низи во JavaScript

Разликата помеѓу двата типа на псевдо-низи е во различното однесување при промена на DOM елементите. Да претпоставиме, на пример, дека добивме колекција на параграфи во форма на HTMLCollection и во форма на NodeList. Потоа ќе создадеме и додадеме уште еден параграф во нашиот DOM. Во овој случај, тој автоматски ќе се појави во HTMLCollection, но колекцијата NodeList ќе остане непроменета.

Да погледнеме на пример. Нека имаме еден div, а во него параграфи. Да го земеме нашиот div и истите тие параграфи во вид на колекции од два различни типа:

javascriptlet parent = document.querySelector('div');
let elems1 = document.getElementsByTagName('p'); // HTMLCollection
let elems2 = document.querySelectorAll('p');     // NodeList

Да додадеме уште еден параграф во нашиот div:

javascriptlet p = document.createElement('p');
parent.append(p);

Како резултат, едната од колекциите ќе се промени, а втората - нема:

javascriptconsole.log(elems1); // 4 параграфи - со новиот
console.log(elems2); // 3 почетни параграфи
Задание 1

Проверете како ќе се однесува својството children при додавање на нов елемент.

Задание 2

Проверете како ќе се однесува својството childNodes при додавање на нов елемент.