Phản ứng các biến ES6
Biến
Trước ES6 chỉ có một cách để xác định biến của bạn: bằng từ khóa var
. Nếu bạn không định nghĩa chúng, chúng sẽ được gán cho đối tượng chung. Trừ khi bạn đang ở chế độ nghiêm ngặt, bạn sẽ gặp lỗi nếu các biến của bạn không được xác định.
Bây giờ, với ES6, có ba cách xác định biến của bạn: var
, let
và const
.
Ví dụ
var
var x = 5.6;
Nếu bạn sử dụng var
bên ngoài hàm thì nó thuộc phạm vi toàn cục.
Nếu bạn sử dụng var
bên trong một hàm thì nó thuộc về hàm đó.
Nếu bạn sử dụng var
bên trong một khối, tức là vòng lặp for, biến vẫn có sẵn bên ngoài khối đó.
var
có phạm vi chức năng , không phải phạm vi khối .
Ví dụ
cho phép
let x = 5.6;
let
là phiên bản phạm vi khối của var
và được giới hạn ở khối (hoặc biểu thức) nơi nó được xác định.
Nếu bạn sử dụng let
bên trong một khối, tức là vòng lặp for, thì biến đó chỉ khả dụng bên trong vòng lặp đó.
let
có một phạm vi khối .
Được chứng nhận!
$95 ĐĂNG KÝ
Ví dụ
hằng số
const x = 5.6;
const
là một biến mà một khi đã được tạo thì giá trị của nó không bao giờ thay đổi.
const
có phạm vi khối .
Từ khóa const
hơi gây hiểu nhầm.
Nó không xác định một giá trị không đổi. Nó định nghĩa một tham chiếu không đổi đến một giá trị.
Vì điều này bạn KHÔNG thể:
- Gán lại một giá trị không đổi
- Tái chỉ định một mảng không đổi
- Tái chỉ định một đối tượng không đổi
- Thay đổi các phần tử của mảng hằng
- Thay đổi thuộc tính của đối tượng không đổi
Nhưng bạn CÓ THỂ: