Hôm nay chúng ta sẽ tìm hiểu cách quản lý nhiều thông tin cùng lúc bằng Mảng (Array) trong JavaScript và hiển thị chúng ngăn nắp bằng thẻ Danh Sách trong HTML.
.push() để thêm một phần tử mới vào cuối mảng.<ul>, <ol>, <li> để trình bày thông tin.list-style-type: none; để ẩn dấu chấm đầu dòng mặc định."Trước đây, mỗi chiếc hộp biến số chỉ chứa được một món đồ (một chữ hoặc một số). Vậy nếu Sóc Candy muốn đi chợ mua 10 loại quả khác nhau, chẳng lẽ chúng ta phải tạo ra 10 biến số khác nhau sao?
Rất may là trong lập trình có một loại hộp đặc biệt tên là **Mảng (Array)**. Mảng giống như một chiếc giỏ siêu to khổng lồ giúp lưu trữ nhiều món đồ cùng lúc!"
Trong Scratch, các em đã làm quen với việc lưu trữ danh sách bằng mục:
📋 Tạo một danh sách (Make a List) trong nhóm Các biến số
Trong JavaScript, ta khai báo một mảng rỗng bằng cặp dấu ngoặc vuông []:
let gioTraiCay = []; // Chiếc giỏ rỗng chưa có quả nào
Để bỏ thêm một món đồ chơi mới hay một loại trái cây mới vào cuối chiếc giỏ mảng của mình, JavaScript cung cấp phương thức .push().
Trong Scratch, các em thêm phần tử vào danh sách bằng khối:
➕ thêm [táo] vào [danh sách quả] (add [apple] to [list])
Trong JavaScript, ta viết như sau:
gioTraiCay.push('Táo'); // Bỏ thêm quả Táo vào giỏ
gioTraiCay.push('Chuối'); // Bỏ thêm quả Chuối vào cuối giỏ
Để trình bày danh sách các loại quả lên màn hình cho người dùng thấy, HTML cung cấp hai định dạng danh sách chính:
<ul>
<li>Quả Cam</li>
<li>Quả Xoài</li>
</ul>
Khi hiển thị danh sách dạng thẻ <ul>, các dấu chấm tròn đen trông khá thô sơ. Ta có thể dùng CSS để ẩn các dấu chấm này và tự do định dạng lại khoảng cách dòng.
ul {
list-style-type: none; /* Xóa bỏ chấm tròn đen đầu dòng */
padding: 0; /* Xóa khoảng đệm mặc định của ul */
}
li {
padding: 8px;
margin: 5px 0;
background-color: #f1f2f6;
border-radius: 5px;
}
Mục tiêu: Tạo trang web cho phép người dùng gõ tên loại trái cây vào ô nhập, sau đó bấm nút "Thêm Quả" để thêm tên quả đó vào mảng JavaScript đồng thời chèn thêm một dòng <li> hiển thị lên màn hình.
bai19-1, thư mục con assets, tạo file index.html và style.css.index.html, thiết lập tiêu đề <h1>: GIỎ TRÁI CÂY CỦA SÓC.<input type="text" id="trai-cay" placeholder="Gõ tên quả...">.<ul id="danh-sach-qua"></ul>.<button onclick="themQua()">Thêm Quả</button>.<script> ở cuối body:
let gio = []; // Khai báo mảng chứa hoa quả ban đầu rỗng
function themQua() {
// Lấy tên quả vừa nhập
let tenQua = document.getElementById('trai-cay').value;
if (tenQua.trim() !== "") {
// Thêm vào mảng gio
gio.push(tenQua);
// Hiển thị thêm một thẻ li mới vào danh sách ul
document.getElementById('danh-sach-qua').innerHTML += 'style.css, định dạng cho thẻ ul có list-style-type: none; và căn chỉnh khoảng cách các dòng li cho đẹp mắt.