Biến: chiếc hộp có tên
Biến là một chiếc hộp bạn đặt tên rồi cất giá trị vào. Trong JavaScript, khai báo bằng let (có thể đổi) hoặc const (không thể gán lại). Việc chọn sai giữa hai cái này là lỗi phổ biến nhất của người mới.
// File: variables.js
const appName = 'DevArchive'; // const: không gán lại được
let score = 0; // let: giá trị sẽ đổi theo thời gian
score = score + 10; // chơi được 1 lượt
// appName = 'X'; -> lỗi! const không cho gán lại
Mặc định dùng const. Chỉ chuyển sang let khi bạn chắc chắn biến cần được gán lại. Điều này giúp code dễ đoán hơn.
Kiểu dữ liệu cốt lõi
| Kiểu | Ví dụ | Khi nào dùng |
|---|---|---|
| number | 42, 3.14 | Số lượng, giá tiền, điểm số |
| string | “hello”, | Chữ, câu, đoạn văn |
| boolean | true / false | Trạng thái đúng/sai |
| array | [1, 2, 3] | Danh sách nhiều phần tử |
| object | { name: “Minh” } | Một đối tượng có nhiều thuộc tính |
| null/undefined | null | “Không có giá trị” — khác nhau về mức độ |
Điều kiện: máy tính biết ra quyết định
if/else cho phép code rẽ nhánh theo điều kiện. Lưu ý: === mới so sánh cả giá trị lẫn kiểu, còn == tự ép kiểu gây lỗi khó lường.
// File: condition.js
const age = 18;
if (age >= 18) {
console.log('Đủ tuổi đăng ký tài khoản');
} else {
console.log('Chưa đủ tuổi');
}
// 1 == '1' -> true (ép kiểu, tránh dùng)
// 1 === '1' -> false (so sánh chặt, luôn dùng cái này)
Vòng lặp: làm đi làm lại có kiểm soát
Máy tính mạnh nhất ở chỗ lặp. Vòng for lặp theo số lần biết trước; while lặp tới khi điều kiện sai. Viết vòng lặp xong luôn tự hỏi: nó có kết thúc không?
// File: loop.js
const scores = [7, 9, 5, 10];
let total = 0;
for (const s of scores) { // đọc từng phần tử
total += s;
}
let n = 5;
while (n > 0) { // lặp tới khi n <= 0
console.log(n);
n--;
}
❓ Đoạn code sau in ra gì? <code>let x = 3; for (let i = 0; i < 3; i++) { x = x + i; } console.log(x);</code>
- Phân biệt được const và let
- Thuộc lòng 6 kiểu dữ liệu cơ bản
- Luôn dùng === thay vì ==
- Kiểm tra vòng lặp có điều kiện kết thúc rõ ràng