JavaScript cơ bản: biến, let và const, các kiểu dữ liệu

  • author-image

    Nguyễn Đình Cường

  • blog-tag
  • blog-comment 0 comment
  • created-date 09 Nov, 2026
blog-thumbnail

JavaScript là ngôn ngữ chạy được ngay trong trình duyệt và cũng là ngôn ngữ đầu tiên của rất nhiều người học lập trình web. Mọi chương trình đều bắt đầu bằng việc lưu trữ dữ liệu, và đó là vai trò của biến. Bài này giúp bạn nắm chắc cách khai báo biến và các kiểu dữ liệu cốt lõi.

Khai báo biến: let, const và var

Bạn có thể coi biến như chiếc hộp có nhãn dán để chứa giá trị. Hiện nay có hai cách khai báo nên dùng:

let tuoi = 20;        // có thể gán lại
tuoi = 21;

const ten = 'Lan';    // không gán lại được
// ten = 'Mai';       // gây lỗi TypeError
  • const: dùng mặc định, cho giá trị không cần gán lại.
  • let: dùng khi bạn biết biến sẽ được gán giá trị mới, như bộ đếm.
  • var: cách cũ, có phạm vi theo hàm và hành vi "hoisting" dễ gây nhầm lẫn. Code mới hầu như không cần dùng.

Một điểm hay bị hiểu nhầm: const chỉ ngăn việc gán lại biến, chứ không làm đối tượng hay mảng bất biến. Bạn vẫn thêm được phần tử vào một mảng khai báo bằng const.

Các kiểu dữ liệu nguyên thủy

  • number: số, gồm cả số nguyên và số thực, như 42 hay 3.14.
  • string: chuỗi ký tự, đặt trong nháy đơn, nháy kép hoặc dấu huyền.
  • boolean: true hoặc false.
  • undefined: biến đã khai báo nhưng chưa có giá trị.
  • null: giá trị rỗng do bạn chủ động gán.
  • bigint và symbol: ít gặp hơn khi mới học.

Ngoài ra còn kiểu object (bao gồm mảng, hàm, đối tượng thường) là kiểu tham chiếu. Dùng toán tử typeof để kiểm tra kiểu:

typeof 42;          // 'number'
typeof 'xin chào';  // 'string'
typeof true;        // 'boolean'
typeof undefined;   // 'undefined'
typeof null;        // 'object' (một đặc điểm lịch sử của JavaScript)
typeof [1, 2];      // 'object'

Kết quả typeof null trả về 'object' là một sự kỳ quặc có từ những phiên bản đầu của ngôn ngữ, bạn chỉ cần biết để khỏi bất ngờ.

Làm việc với chuỗi

Template string dùng dấu huyền cho phép chèn biến vào chuỗi gọn gàng:

const ten = 'Lan';
const tuoi = 20;
console.log('Xin chào ' + ten);                 // nối chuỗi kiểu cũ
console.log(`Xin chào ${ten}, ${tuoi} tuổi`);  // template string

Cách viết thân thiện nhất là template string với ${}, bạn đặt biểu thức trong cặp ngoặc nhọn có dấu đô la phía trước, bên trong cặp dấu huyền, và nó sẽ được thay bằng giá trị. Một số phương thức hữu ích của chuỗi: length, toUpperCase(), trim(), includes(), split(), slice().

Ép kiểu và so sánh

JavaScript có kiểu động, tức biến không bị gắn cố định với một kiểu và đôi khi tự chuyển đổi giá trị. Điều này gây ra vài tình huống thú vị:

'5' + 3;      // '53' (nối chuỗi)
'5' - 3;      // 2 (chuyển sang số)
5 == '5';      // true (so sánh lỏng)
5 === '5';     // false (so sánh nghiêm ngặt)

Quy tắc vàng là luôn dùng === và !== để so sánh, tránh các chuyển đổi ngầm. Khi cần chuyển đổi, hãy làm tường minh bằng Number('5'), String(5) hoặc parseInt('42', 10).

Giá trị truthy và falsy

Trong điều kiện if, mọi giá trị đều được xem là đúng hoặc sai. Các giá trị falsy gồm: false, 0, chuỗi rỗng, null, undefined và NaN. Mọi thứ còn lại đều truthy, kể cả mảng rỗng và đối tượng rỗng. Nhớ điều này giúp bạn tránh lỗi khi kiểm tra "có dữ liệu hay không".

Thử ngay trong trình duyệt

Bạn không cần cài gì cả. Mở trình duyệt, nhấn F12, chọn tab Console và gõ trực tiếp các ví dụ ở trên. Việc tự gõ và quan sát kết quả hiệu quả hơn nhiều so với chỉ đọc.

Bài tập nhỏ để luyện tay

Hãy thử tự viết đoạn mã dưới đây trong tab Console và đoán trước kết quả trước khi chạy:

const gia = 150000;
const soLuong = 3;
const tongTien = gia * soLuong;
const loiNhan = 'Tổng tiền: ' + tongTien.toLocaleString('vi-VN') + ' đồng';
console.log(loiNhan);
console.log(typeof tongTien, typeof loiNhan);

Sau đó thay đổi: thử gán lại gia (lỗi vì là const), đổi sang let, hoặc thử cộng một chuỗi vào số để xem điều gì xảy ra. Việc chủ động phá vỡ ví dụ để hiểu lỗi là cách học rất nhanh. Cũng nên tập đặt tên biến theo kiểu camelCase, có ý nghĩa, để chính bạn đọc lại sau một tuần vẫn hiểu.

Kết luận

Hãy bắt đầu với const, dùng let khi cần gán lại, nhớ các kiểu nguyên thủy, và so sánh bằng ===. Những thói quen này giúp bạn tránh được một loạt lỗi kinh điển của người mới.

Nếu muốn học JavaScript từ gốc với bài tập và dự án có hướng dẫn, bạn có thể tìm khóa phù hợp trong danh sách khóa học của codebem.com.

author_photo
Nguyễn Đình Cường

0 comment