Assalamualaikum wr wb. Halo guys kembali lagi denga saya Haikal di materi javascript. Kali ini saya ingin sharing materi tentang NodeList. Ini akan menjadi materi penutup untuk javascript DOM. Selanjutnya, sebelum menuju ke frontend framework javascript yaitu react js kita juga akan membahas materi javascript lanjutan seperti konsep hoisting, synchronous vs asynchronous, closure, promise dll. Sekarang kita bahas apa sih itu Node List?
NodeList
Kalian pasti udah bisa nebak kalau kalian mengikuti sebelumnya tentang DOM Navigation, Kita sebelumnya juga sempat membahas Node lalu apa itu NodeList? Sederhananya ya kumpulan / daftar node. NodeList ini hampir mirip dengan HTMLCollection. Ia merupakan sebuah collection atau kumpulan. Kalau NodeList berupa document nodes dan HTMLCollection berupa collection HTML element.
Untuk mengakses NodeList ini kalian gunakan method querySelectorAll() yang nantinya ia akan mengembalikan node-node document yang telah dikumpulkan.
Contoh:
Simpel saja, kita membuat banyak elemen <p>, lalu kita select semua p tersebut dan akan menghasilkan sebuah NodeList. Kita cek hasilnya di console:
Nah, ia bukan merupakan HTMLCollection melainkan NodeList.
Bila kalian ingil me-looping elemen-elemen tersebut sesuai dengan length atau berapa banyak elemen tersebut tinggal gunakan elemen.length dan pastikan ia telah di-select terlebih dahulu dengan querySelectorAll().
Perbedaan-Perbedaan NodeList dengan HTMLCollection
- HTMLCollection: kumpulan elemen | NodeList: kumpulan dokumen node
- HTMLCollection: bisa di akses dengan nama, id atau index number | NodeList: hanya bisa diakses melalui index number
- NodeList: hanya nodelist objek lah yang dapat membawa attribute nodes dan teks nodes
Persamaan NodeList dengan HTMLCollection
- Sama-sama collection
- Menyediakan akses melalui index number
- Memiliki jarak properti yang mendefinisikan number items dari list
Catatan:
NodeList memang terlihat seperti array, tapi sebenarnya bukan. Kalian bisa me-looping setiap node yang ada didalamnya akan tetapi, kalian tidak dapat menggunakan array method seperti slice, push, pop, dll.
Referensi: w3schools.com
Mungkin sekian saja untuk materi kali ini, mohon maaf bila ada kesalahan, wassalamualaikum wr wb.
Komentar
Posting Komentar