1. Biến (variables) là gì?
Trong JavaScript, biến giống như hộp đựng trong tiệm tạp hoá. Mỗi biến có:
- Một tên (name) để phân biệt
- Một giá trị (value) bên trong
–> Giúp chúng ta lưu trữ dữ liệu để sử dụng lại sau này.
Ví dụ:
let userAge = 21; // Tên biến: userAge, Giá trị: 21
2. Khai báo biến: var, let, const
var:- Cách khai báo cũ (từ ES5 trở về trước).
- Phạm vi hoạt động không rõ ràng (function scope), dễ gây lỗi
- Không nên dùng cho dự án mới nữa
let:- Dùng để khai báo biến có thể thay đổi
- Có phạm vi block (block scope) –> an toàn hơn var.
let name = "Thiên";
name = "Thành Thiên"; // OK
const:- Dùng để khai báo hằng số – giá trị không thay đổi sau khi gán.
- Bắt buộc phải gán giá trị ngay khi khai báo.
const PI = 3.14;
PI = 3.1415; // ❌ Lỗi, không thể thay đổi giá trị const
3. Gán và cập nhật giá trị
| Loại | Có thể cập nhật? | Bắt buộc gán giá trị khi khai báo? |
|---|---|---|
| var | ✅ Có | ❌ Không cần ngay |
| let | ✅ Có | ❌ Không cần ngay |
| const | ❌ Không | ✅ Bắt buộc |
4. Quy tắc đặt tên biến
✅ Nên:
- Dùng tiếng Anh đơn giản
- Dùng kiểu camelCase: ví dụ userName, totalPrice
- Tên rõ ràng, gợi nghĩa: userAge, isLogin, productList
❌ Tránh:
- Dùng số ở đầu: 1stUser ❌
- Trùng từ khoá JavaScript: let, class, function
- Tên vô nghĩa: x, y, abc ❌ (trừ khi làm toán)
- Trùng tên biến đã có trước đó
⚠️ JavaScript phân biệt chữ hoa – chữ thường:
let a = 1;
let A = 2;
console.log(a); // 1
console.log(A); // 2
🧨 5. Lỗi thường gặp khi dùng biến
| Lỗi | Giải thích |
|---|---|
| ❌ Quên khai báo biến | Sẽ báo lỗi khi dùng biến chưa tồn tại |
| ❌ Đặt tên sai quy tắc | Không thể dùng tên có ký tự đặc biệt, bắt đầu bằng số |
| ❌ Khai báo biến trùng tên | Có thể ghi đè hoặc báo lỗi tuỳ biến |
| ❌ Dùng const nhưng lại muốn gán lại | Sẽ báo lỗi vì const không cho thay đổi giá trị |
age = 25; // ❌ Chưa khai báo bằng let/const → lỗi trong chế độ strict
const x = 10;
x = 20; // ❌ Lỗi: không thể gán lại cho const
Kết luận:
Biến là nề tảng cực kỳ quan trọng trong mọi ngôn ngữ lập trình.
Hãy hiểu thật chắc: Khai báo –> Gán –> Đặt tên –> Tránh lỗi