Skip to content

JavaScript Reference - Tập 18: HTMLCollection & NodeList - Quản lý danh sách phần tử

TuanNDA
Published date:
Edit this post

Table of contents

Open Table of contents

1. HTMLCollection là gì?

HTMLCollection là một danh sách chứa các phần tử HTML (Element nodes).


2. NodeList là gì?

NodeList là một danh sách chứa các nút (Nodes). Nút ở đây có thể là phần tử HTML, nhưng cũng có thể là nút văn bản (Text node) hoặc nút bình luận (Comment node).


3. Bảng so sánh nhanh

Đặc điểmHTMLCollectionNodeList
Loại nútChỉ ElementTất cả Node (Element, Text…)
Tính chấtLuôn luôn “Live”Đa số là “Static”
Cách truy cậpIndex, ID, NameChỉ Index
Duyệt (forEach)Không hỗ trợ trực tiếpCó hỗ trợ trực tiếp

4. Tại sao chúng không phải là mảng?

Cả hai đều được gọi là “Array-like objects”. Bạn có thể dùng vòng lặp for để duyệt chúng, nhưng bạn không thể dùng các phương thức mạnh mẽ của Mảng như .push(), .pop(), .map() hay .filter().

Mẹo: Nếu muốn dùng các hàm của mảng, hãy chuyển chúng về mảng thực thụ bằng Spread operator:

const collection = document.getElementsByClassName("item");
const array = [...collection]; // Chuyển thành mảng thực thụ
array.map(item => console.log(item));

Lời kết Tập 18

Đây là bài viết cuối cùng trong Series JavaScript Reference! Chúng ta đã đi qua một hành trình dài từ xử lý chuỗi, mảng, đối tượng cho đến việc làm chủ hoàn toàn các thành phần của trình duyệt và DOM.

Hành trình chinh phục JavaScript của anh Tuấn trên blog tuannda.dev chắc chắn đã có một bộ tài liệu tra cứu cực kỳ vững chắc. Chúc anh có những dự án tuyệt vời với những kiến thức này! 🏁✨

Previous
Tự học Rust - Bài 1: Giới thiệu và Cài đặt môi trường
Next
JavaScript Reference - Tập 17: HTML DOM Style - Điều khiển CSS bằng JS