Mục lục
Mục lục
Trong phần 2, chúng ta sẽ tìm hiểu về cách làm việc với biến trong JavaScript, bao gồm khai báo, gán giá trị, và thay đổi giá trị của biến. Ngoài ra, chúng ta cũng sẽ khám phá phạm vi (scope) trong JavaScript và một số hàm thường dùng.
JavaScript cung cấp ba từ khóa để khai báo biến: var
, let
, và const
.
var
var
có phạm vi trong hàm chứa nó.var
được hoisting lên đầu phạm vi của nó, nhưng chỉ hoisting phần khai báo, không hoisting phần gán giá trị.let
let
có phạm vi trong khối code (block) chứa nó.let
cũng được hoisting nhưng nằm trong “Temporal Dead Zone” cho đến khi gặp dòng khai báo.const
let
, const
có phạm vi trong khối code.const
phải được gán giá trị khi khai báo và không thể gán lại sau đó.Hoisting là một hành vi trong JavaScript khi các khai báo biến và hàm được đưa lên đầu phạm vi của chúng trước khi code được thực thi.
var
Khi sử dụng var
, JavaScript hoisting phần khai báo biến lên đầu phạm vi, nhưng không hoisting phần gán giá trị.
Trong ví dụ trên, JavaScript xử lý như sau:
let
và const
- Temporal Dead Zonelet
và const
cũng được hoisting, nhưng khác với var
, chúng không được khởi tạo với giá trị undefined
. Thay vào đó, chúng tồn tại trong “Temporal Dead Zone” cho đến khi đến dòng khai báo.
Đặc điểm | var | let | const |
---|---|---|---|
Phạm vi | Global scope | Block scope | Block scope |
Hoisting | Hoisted và khởi tạo với undefined |
Hoisted nhưng không khởi tạo (TDZ) | Hoisted nhưng không khởi tạo (TDZ) |
Gán lại giá trị | Có thể | Có thể | Không thể |
Khai báo lại | Có thể | Không thể trong cùng phạm vi | Không thể trong cùng phạm vi |
Khởi tạo | Không bắt buộc | Không bắt buộc | Bắt buộc |
Giới thiệu từ | ES1 (1997) | ES6 (2015) | ES6 (2015) |
Sử dụng var
:
var
trong code mớiSử dụng let
:
Sử dụng const
:
const
làm mặc địnhToán tử gán =
được sử dụng để gán giá trị cho biến.
Biến khai báo bằng var
hoặc let
có thể thay đổi giá trị trong quá trình thực thi.
Scope (phạm vi) xác định nơi biến có thể được truy cập trong code.
Biến khai báo ngoài mọi hàm hoặc khối code có phạm vi toàn cục.
Biến khai báo trong hàm hoặc khối code có phạm vi cục bộ.
let
và const
để kiểm soát phạm vi biến chặt chẽ hơn.alert()
Hiển thị hộp thoại thông báo.
confirm()
Hiển thị hộp thoại xác nhận với hai nút OK và Cancel.
setTimeout()
Thực thi hàm sau một khoảng thời gian.
setInterval()
Thực thi hàm định kỳ sau mỗi khoảng thời gian.
Trong phần tiếp theo, chúng ta sẽ khám phá sâu hơn về các toán tử, biểu thức cơ bản, các kiểu so sánh, câu lệnh rẽ nhánh, vòng lặp bờ la bờ la. Nói chung là nếu mình khum lười hihi. Cảm ơn các bạn đã đọc ạaa