Biến trong JavaScript

Biến trong JavaScript

Tìm hiểu về khái niệm biến trong ngôn ngữ lập trình JavaScript

Hầu hết thời gian, một ứng dụng JavaScript cần làm việc và lưu trữ thông tin. Đây là hai ví dụ:

  1. Một cửa hàng trực tuyến - thông tin có thể bao gồm hàng hóa nào đang được bán và hàng hóa nào đang nằm trong giỏ hàng.
  2. Một ứng dụng trò chuyện - thông tin có thể bao gồm người dùng, các tinh nhắn, v.v...

Các biến được sử dụng để lưu trữ những thông tin này.

Biến là gì?

Một biến là một "vùng nhớ được đặt tên" cho dữ liệu. Chúng ta có thể sử dụng các biến để lưu trữ các món hàng, các khách truy cập và các dữ liệu khác.

Để tạo một biến trong JavaScript, hãy sử dụng từ khóa let.

Câu lệnh dưới đây tạo (còn gọi là khai báo) một biến có tên message:

let message;

Bây giờ chúng ta có thể đưa một số dữ liệu vào biến bằng cách sử dụng toán tử gán, được kí hiệu là dấu bằng =:

let message;

message = 'Hello!'; // lưu một chuỗi vào biến

Chuỗi giờ được lưu vào vùng nhớ có tên message. Chúng ta có thể cập truy vùng nhớ này để lấy chuỗi bằng cách sử dụng tên vùng nhớ (tên biến):

let message;
message = 'Hello!';

console.log(message);  // hiển thị nội dung của biến có tên message

Chúng ta có thể khai báo nhiều biến trên một dòng:

let user = 'John', age = 25, message = 'Hello!';

Nhưng bạn nên khai báo mỗi biến trên một dòng cho chương trình dễ đọc:

let user = 'John';
let age = 25;
let message = 'Hello!';

Một hình dung về biến

Chúng ta có thể dễ dàng nắm bắt được khái niệm "biến" nếu hình dung nó như một "hộp" chứa dữ liệu và bên ngoài hộp này có dãn một nhãn ghi tên biến đó.

Ví dụ, biến message có thể hình dung như một hộp có dãn nhãn "message" với giá trị "Hello!" trong đó:

variable.png

Chúng ta có thể đặt bất cứ giá trị nào vào hộp.

Chúng ta cũng có thể thay đổi giá trị của hộp bất cứ lúc nào ta muốn:

let message;

message = 'Hello!';

message = 'World!'; // giá trị đã thay đổi

console.log(message);

Khi giá trị được thay đổi, dữ liệu cũ sẽ bị xóa:

variable-change.png

Chúng ta có thể sao chép dữ liệu từ biến này sang biến khác:

let hello = 'Hello world!';

let message;

// sao chép 'Hello world!' từ biến `hello` sang biến `message`
message = hello;

// giờ hai biến lưu dữ liệu giống nhau
console.log(hello);  // Hello world!
console.log(message); // Hello world!

Một biến chỉ có thể khai báo một lần. Khai báo một biến đã được khai báo trước đó gây ra lỗi cú pháp:

let message = "This";

// khai báo lại biến "message" dẫn đến một lỗi cú pháp
let message = "That"; // SyntaxError: 'message' has already been declared

Vì vậy, chúng ta chỉ khai báo biến một lần trước khi sử dụng và sau đó chỉ cần tham chiếu tới nó mà không sử dụng let.

Đặt tên biến

Có hai hạn chế về tên biến trong JavaScript:

  1. Tên chỉ được chứa các chữ cái, chữ số hoặc các ký hiệu $_.
  2. Kí tự đầu tiên không được là chữ số.

Đây là ví dụ về tên biến hợp lệ:

let userName;
let test123;

Một quy ước được sử dụng phổ biến trong JavaScript là khi tên biến gồm nhiều từ chúng được nối liên với nhau; ngoại trừ từ đầu tiên, chữ cái đầu của mỗi từ được viết hoa. Ví dụ myVeryLongName. Quy tắc này được gọi là quy tắc lạc đà.

Điều thú vị là ký hiệu đô la $ và dấu gạch dưới _ cũng có thể dùng trong tên biến.

Nhưng tên biến sau đây hoàn toàn hợp lệ:

let $ = 1;
let _ = 2;

console.log($ + _); // 3

Cuối cùng là ví dụ về những tên biến không hợp lệ.

let 1a; // tên biến bắt đầu bằng chữ số
let my-name; // tên biến có dấu gạch ngang `-`

Các biến trong JavaScript phân biệt chữ hoa, chữ thường. Hai biến appleAppLE là hai biến khác nhau.

Từ khóa

Có một danh sách các từ dành riêng cho JavaScript, được gọi là từ khóa. Từ khóa không được phép dùng làm tên biến vì đã chúng đã được JavaScript sử dụng.

Một số ví dụ về từ khóa là: let, class, returnfunction.

Các tên biến dưới đây đều không hợp lệ vì trùng với từ khóa:

let let = 5; // trùng với từ khóa `let`
let return = 5; // trùng với từ khóa `return`

Hằng số

Hằng số là biến có giá trị không thể thay đổi.

Để tạo biến, sử dụng từ khóa const thay vì let.

const MY_BIRTH_DAY = '03.08.1986';

// Gán một giá trị cho một hằng gây ra một lỗi về kiểu TypeError
MY_BIRTH_DAY = '01.01.2021'; // TypeError: Assignment to constant variable.

Không sử dụng quy tắc lạc đà, các hằng số thường được viết hoa, các từ không viết liền nhau mà giữa chúng là dấu gạch dưới _:

const COLOR_RED = "#F00";
const COLOR_GREEN = "#0F0";
const COLOR_BLUE = "#00F";
const COLOR_ORANGE = "#FF7F00";