JavaScript'teki Sözde Dizi Türleri Arasındaki Fark

İki sözde dizi türü arasındaki fark, DOM elemanları değiştiğinde farklı davranışlarıdır. Örneğin, bir paragraf koleksiyonunu HTMLCollection ve NodeList olarak aldığımızı varsayalım. Daha sonra DOM'a yeni bir paragraf oluşturup eklediğimizde, Bu paragraf otomatik olarak HTMLCollection içinde görünecek, ancak NodeList koleksiyonu değişmeden kalacaktır.

Bir örnekle inceleyelim. Bir div ve içinde paragraflar olsun. Aynı div'i ve aynı paragrafları iki farklı türde koleksiyon olarak alalım:

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

Div'e yeni bir paragraf ekleyelim:

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

Sonuç olarak, koleksiyonlardan biri değişecek, diğeri ise değişmeyecek:

javascriptconsole.log(elems1); // 4 paragraf - yeni olanla birlikte
console.log(elems2); // 3 başlangıç paragrafı
Задание 1

Yeni bir eleman eklendiğinde children özelliğinin nasıl davranacağını kontrol edin.

Задание 2

Yeni bir eleman eklendiğinde childNodes özelliğinin nasıl davranacağını kontrol edin.