[JavaScript Cơ Bản] – Biến (Variables): Khái niệm gốc rễ lập trình

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
Biến trong JavaScript
Đặt nhãn cho các hộp đựng, khi cần gì chỉ cần đến tìm hộp có nhãn đó để lấy chúng.

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ạiCó 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ỗiGiải thích
❌ Quên khai báo biếnSẽ báo lỗi khi dùng biến chưa tồn tại
❌ Đặt tên sai quy tắcKhô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ênCó thể ghi đè hoặc báo lỗi tuỳ biến
❌ Dùng const nhưng lại muốn gán lạiSẽ 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