Ngoại lệ JavaScript "thiếu tên biến" là một lỗi phổ biến. Thường là do bỏ sót tên biến hoặc lỗi đánh máy
Thông điệp
SyntaxError: missing variable name [Firefox] SyntaxError: Unexpected token '='. Expected a parameter pattern or a ']' in parameter list. [Safari]
loại lỗi
const debugger = "whoop";
// SyntaxError: missing variable name
8Có chuyện gì?
Biến bị thiếu tên. Nguyên nhân rất có thể là do đánh máy hoặc quên tên biến. Đảm bảo rằng bạn đã cung cấp tên của biến trước dấu hiệu
const debugger = "whoop";
// SyntaxError: missing variable name
9Khi khai báo nhiều biến cùng lúc, đảm bảo rằng các dòng/khai báo trước đó không kết thúc bằng dấu phẩy thay vì dấu chấm phẩy
ví dụ
Thiếu tên biến
const = "foo";
Rất dễ quên gán tên cho biến của bạn
const description = "foo";
Từ khóa dành riêng không thể là tên biến
Có một vài tên biến là từ khóa dành riêng. Bạn không thể sử dụng những thứ này. Xin lỗi. [
const debugger = "whoop";
// SyntaxError: missing variable name
Khai báo nhiều biến
Đặc biệt chú ý dấu phẩy khi khai báo nhiều biến. Có thừa dấu phẩy hay bạn đã sử dụng dấu phẩy thay vì dấu chấm phẩy?
Biến có nghĩa là bất cứ điều gì có thể thay đổi. Trong JavaScript, một biến lưu trữ dữ liệu có thể thay đổi sau này
Khai báo một biến
Trong JavaScript, một biến có thể được khai báo bằng các từ khóa
let msg;
msg = "Hello JavaScript!"; // assigning a string value
2, let msg;
msg = "Hello JavaScript!"; // assigning a string value
3, let msg;
msg = "Hello JavaScript!"; // assigning a string value
4- từ khóa var được sử dụng để khai báo các biến kể từ khi JavaScript được tạo ra. Thật khó hiểu và dễ bị lỗi khi sử dụng các biến được khai báo bằng
2let msg; msg = "Hello JavaScript!"; // assigning a string value
- hãy để từ khóa loại bỏ sự nhầm lẫn và lỗi của
2. Đây là cách khai báo biến mới và được đề xuất trong JavaScriptlet msg; msg = "Hello JavaScript!"; // assigning a string value
- Từ khóa const dùng để khai báo một biến hằng, không thể thay đổi khi đã gán giá trị
Ở đây, chúng ta sẽ sử dụng từ khóa
let msg;
msg = "Hello JavaScript!"; // assigning a string value
3 để khai báo biến. Để khai báo một biến, hãy viết từ khóa let msg;
msg = "Hello JavaScript!"; // assigning a string value
3 theo sau là tên của biến bạn muốn cung cấp, như hình dưới đâyThí dụ. Sự định nghĩa biến
const = "foo";
2Thử nó
Trong ví dụ trên,
let msg;
msg = "Hello JavaScript!"; // assigning a string value
9 là một khai báo biến. Nó chưa có bất kỳ giá trị nào. Giá trị mặc định của các biến không có bất kỳ giá trị nào là không xác địnhBạn có thể gán giá trị cho một biến bằng cách sử dụng toán tử
const = "foo";
40 khi bạn khai báo nó hoặc sau khi khai báo và trước khi truy cập nóThí dụ. Khởi tạo biến
let msg;
msg = "Hello JavaScript!"; // assigning a string value
Thử nó
Trong ví dụ trên, biến
const = "foo";
41 được khai báo trước và sau đó được gán giá trị chuỗi ở dòng tiếp theoBạn có thể khai báo một biến và gán giá trị cho nó trên cùng một dòng. Các giá trị có thể thuộc bất kỳ kiểu dữ liệu nào, chẳng hạn như chuỗi, số, boolean, v.v.
Thí dụ. Khai báo và khởi tạo biến
const = "foo";
4Thử nó
Nhiều biến có thể được khai báo trong một dòng, như hình bên dưới
Thí dụ. Nhiều biến
const = "foo";
8Thử nó
Bạn có thể sao chép giá trị của một biến này sang một biến khác, như hình bên dưới
Thí dụ. Sao chép biến
const = "foo";
9Thử nó
JavaScript cho phép nhiều khoảng trắng và ngắt dòng khi bạn khai báo một biến
Thí dụ. Khoảng trắng và ngắt dòng
const description = "foo";
0Thử nó
Tên biến phân biệt chữ hoa chữ thường trong JavaScript. Bạn không thể khai báo một biến trùng lặp bằng cách sử dụng từ khóa
let msg;
msg = "Hello JavaScript!"; // assigning a string value
3 có cùng tên và trường hợp. JavaScript sẽ đưa ra một lỗi cú pháp. Mặc dù, các biến có thể có cùng tên nếu được khai báo bằng từ khóa let msg;
msg = "Hello JavaScript!"; // assigning a string value
2 [đây là lý do tại sao nên sử dụng let msg;
msg = "Hello JavaScript!"; // assigning a string value
3]Thí dụ. Lỗi cú pháp
const description = "foo";
4Quy ước đặt tên biến JavaScript
- Tên biến phân biệt chữ hoa chữ thường trong JavaScript. Vì vậy, tên biến
41,const = "foo";
46,const = "foo";
47,const = "foo";
48 được coi là biến riêngconst = "foo";
- Tên biến có thể chứa các chữ cái, chữ số hoặc ký hiệu $ và _
- Tên biến không được bắt đầu bằng chữ số 0-9
- Tên biến không thể là từ khóa dành riêng trong JavaScript, e. g. var, function, return không thể là tên biến
Nhập động
JavaScript là một ngôn ngữ gõ lỏng lẻo. Điều đó có nghĩa là bạn không cần chỉ định kiểu dữ liệu mà một biến sẽ chứa. Bạn có thể cập nhật giá trị của bất kỳ loại nào sau khi khởi tạo. Nó còn được gọi là gõ động
Thí dụ. Biến được gõ lỏng lẻo
const description = "foo";
9Thử nó
Biến không đổi trong JavaScript
Sử dụng từ khóa
let msg;
msg = "Hello JavaScript!"; // assigning a string value
4 để khai báo biến hằng trong JavaScript- Các biến hằng phải được khai báo và khởi tạo cùng một lúc
- Giá trị của các biến hằng không thể thay đổi sau khi khởi tạo chúng
Thí dụ. Không biến đổi
const debugger = "whoop";
// SyntaxError: missing variable name
1Thử nó
Giá trị của biến hằng không thể thay đổi nhưng nội dung của giá trị thì có thể thay đổi. Ví dụ: nếu một đối tượng được gán cho một biến const thì giá trị cơ bản của đối tượng có thể được thay đổi
Thí dụ. Không biến đổi
const debugger = "whoop";
// SyntaxError: missing variable name
2Thử nó
Cách tốt nhất là đặt tên biến không đổi bằng chữ in hoa để phân biệt chúng với các biến không cố định khác
Phạm vi biến đổi
Trong JavaScript, một biến có thể được khai báo trong phạm vi toàn cục hoặc phạm vi cục bộ
Biến toàn cầu
Các biến được khai báo ngoài bất kỳ hàm nào được gọi là biến toàn cục. Chúng có thể được truy cập ở bất kỳ đâu trong mã JavaScript, ngay cả bên trong bất kỳ chức năng nào
Biến cục bộ
Các biến được khai báo bên trong hàm được gọi là biến cục bộ của hàm đó. Chúng chỉ có thể được truy cập trong hàm nơi chúng được khai báo chứ không thể truy cập bên ngoài
Ví dụ sau bao gồm các biến toàn cục và cục bộ
Thí dụ. Biến toàn cầu và cục bộ
let msg;
msg = "Hello JavaScript!"; // assigning a string value
0Thử nó
Tìm hiểu phạm vi toàn cầu và cục bộ trong JavaScript để biết thêm thông tin
Khai báo Biến không có var và để Từ khóa
Các biến có thể được khai báo và khởi tạo mà không cần từ khóa
let msg;
msg = "Hello JavaScript!"; // assigning a string value
2 hoặc let msg;
msg = "Hello JavaScript!"; // assigning a string value
3. Tuy nhiên, một giá trị phải được gán cho một biến được khai báo mà không có từ khóa let msg;
msg = "Hello JavaScript!"; // assigning a string value
2Các biến được khai báo không có từ khóa
let msg;
msg = "Hello JavaScript!"; // assigning a string value
2 sẽ trở thành biến toàn cục, bất kể chúng được khai báo ở đâu. Truy cập Phạm vi biến trong JavaScript để tìm hiểu về nó