Mã thông báo bất ngờ trong javascript là gì?
Ngoại lệ JavaScript "mã thông báo không mong muốn" xảy ra khi một cấu trúc ngôn ngữ cụ thể được mong đợi, nhưng một thứ khác đã được cung cấp. Đây có thể là một lỗi đánh máy đơn giản Show
Thông điệpSyntaxError: expected expression, got "x" SyntaxError: expected property name, got "x" SyntaxError: expected target, got "x" SyntaxError: expected rest argument name, got "x" SyntaxError: expected closing parenthesis, got "x" SyntaxError: expected '=>' after argument list, got "x" loại lỗifunction round(n, upperBound, lowerBound){ if(n > upperBound) || (n < lowerBound){ throw 'Number ' + String(n) + ' is more than ' + String(upperBound) + ' or less than ' + String(lowerBound); }else if(n < ((upperBound + lowerBound)/2)){ return lowerBound; }else{ return upperBound; } } // SyntaxError: expected expression, got '||'7 Có chuyện gì?Một cấu trúc ngôn ngữ cụ thể đã được mong đợi, nhưng một thứ khác đã được cung cấp. Đây có thể là một lỗi đánh máy đơn giản ví dụBiểu hiện dự kiếnVí dụ: khi xâu chuỗi các biểu thức, không được phép có dấu phẩy ở cuối for (let i = 0; i < 5,; ++i) { console.log(i); } // SyntaxError: expected expression, got ')' Đúng là bỏ dấu phẩy hoặc thêm biểu thức khác for (let i = 0; i < 5; ++i) { console.log(i); } Không đủ dấu ngoặcĐôi khi, bạn bỏ dấu ngoặc xung quanh câu lệnh function round(n, upperBound, lowerBound){ if(n > upperBound) || (n < lowerBound){ throw 'Number ' + String(n) + ' is more than ' + String(upperBound) + ' or less than ' + String(lowerBound); }else if(n < ((upperBound + lowerBound)/2)){ return lowerBound; }else{ return upperBound; } } // SyntaxError: expected expression, got '||'8 function round(n, upperBound, lowerBound){ if(n > upperBound) || (n < lowerBound){ throw 'Number ' + String(n) + ' is more than ' + String(upperBound) + ' or less than ' + String(lowerBound); }else if(n < ((upperBound + lowerBound)/2)){ return lowerBound; }else{ return upperBound; } } // SyntaxError: expected expression, got '||' Thoạt nhìn, dấu ngoặc có thể đúng, nhưng hãy lưu ý cách function round(n, upperBound, lowerBound){ if(n > upperBound) || (n < lowerBound){ throw 'Number ' + String(n) + ' is more than ' + String(upperBound) + ' or less than ' + String(lowerBound); }else if(n < ((upperBound + lowerBound)/2)){ return lowerBound; }else{ return upperBound; } } // SyntaxError: expected expression, got '||'9 nằm bên ngoài dấu ngoặc. Đúng sẽ là đặt dấu ngoặc xung quanh function round(n, upperBound, lowerBound){ if(n > upperBound) || (n < lowerBound){ throw 'Number ' + String(n) + ' is more than ' + String(upperBound) + ' or less than ' + String(lowerBound); }else if(n < ((upperBound + lowerBound)/2)){ return lowerBound; }else{ return upperBound; } } // SyntaxError: expected expression, got '||'9 Lỗi cú pháp. Mã thông báo không mong muốn trong JavaScript"Lỗi cú pháp không bắt được. Mã thông báo bất ngờ" ngoại lệ xảy ra vì nhiều lý do
LnRiLWNvbnRhaW5lciAudGItY29udGFpbmVyLWlubmVye3dpZHRoOjEwMCU7bWFyZ2luOjAgYXV0b30gLndwLWJsb2NrLXRvb2xzZXQtYmxvY2tzLWNvbnRhaW5lci50Yi1jb250YWluZXJbZGF0YS10b29sc2V0LWJsb2Nrcy1jb250YWluZXI9IjdmZjEwMTJkZDQ1MGExMTU3YWYxZWM0N2IzYmE4OTE0Il0geyBwYWRkaW5nOiAyNXB4O21hcmdpbi1ib3R0b206IDBweDsgfSBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MXB4KSB7IC50Yi1jb250YWluZXIgLnRiLWNvbnRhaW5lci1pbm5lcnt3aWR0aDoxMDAlO21hcmdpbjowIGF1dG99IH0gQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkgeyAudGItY29udGFpbmVyIC50Yi1jb250YWluZXItaW5uZXJ7d2lkdGg6MTAwJTttYXJnaW46MCBhdXRvfSB9IA== Lỗi cú pháp. Mã thông báo không mong muốn trong JavaScriptNgày 8 tháng 12 năm 2022 Hướng dẫn này là một phần của loạt bài "Các lỗi JavaScript phổ biến". Nó hoàn toàn tập trung vào việc cung cấp các giải pháp nhanh chóng và dễ dàng cho các sự cố liên quan đến JavaScript "Lỗi cú pháp. Lỗi mã thông báo không mong đợi" trong JavaScript là lỗi cú pháp phổ biến xảy ra khi trình thông dịch JavaScript gặp mã thông báo (i. e. một đoạn mã) mà nó không mong đợi. Điều này có thể xảy ra vì nhiều lý do, chẳng hạn như
Dưới đây là một số ví dụ về mã có thể gây ra lỗi
Trong các ví dụ này, trình thông dịch JavaScript gặp phải các mã thông báo mà nó không mong đợi (e. g. dấu ngoặc đơn đóng bổ sung trong ví dụ thứ hai) và nó đưa ra lỗi "SyntaxError. Lỗi mã thông báo không mong muốn" Để khắc phục lỗi này, bạn phải xem xét cẩn thận mã của mình và xác định mã thông báo không mong muốn gây ra lỗi. Khi bạn đã tìm thấy mã thông báo không mong muốn, bạn có thể sửa nó bằng cách xóa mã đó, thêm mã thông báo bị thiếu mà lẽ ra nó phải được ghép nối hoặc sửa lỗi cú pháp khiến mã thông báo không mong muốn xuất hiện Xử lý lỗi JavaScript. Mã thông báo bất ngờ Cải thiện bài viết Lưu bài viết Thích bài viết
Cải thiện bài viết Lưu bài viết Giống như các ngôn ngữ lập trình khác, JavaScript đã xác định một số quy tắc lập trình phù hợp. Không theo dõi họ ném một lỗi. Mã thông báo không mong muốn xảy ra nếu mã JavaScript thiếu hoặc thừa ký tự { like, ) + – var if-else var etc}. Mã thông báo không mong muốn tương tự như lỗi cú pháp nhưng cụ thể hơn. Dấu chấm phẩy (;) trong JavaScript đóng một vai trò quan trọng trong khi viết chương trình.
Do đó, mã JavaScript rất nhạy cảm với bất kỳ lỗi đánh máy nào. Những ví dụ được đưa ra dưới đây giải thích những cách mà mã thông báo không mong muốn có thể xảy ra. jav 2 4 5 6 4 8expected expression, got ', '0____51____52____53 6expected expression, got ', '5 ________ 46 ________ 57 ________ 58 expected expression, got ', '0____130____131 for (let i = 0; i < 5,; ++i) { console.log(i); } // SyntaxError: expected expression, got ')'32 _______50____134____135____132 expected expression, got ', '0 for (let i = 0; i < 5,; ++i) { console.log(i); } // SyntaxError: expected expression, got ')'38 6for (let i = 0; i < 5; ++i) { console.log(i); }20 6expected expression, got ', '7 for (let i = 0; i < 5; ++i) { console.log(i); }23 6for (let i = 0; i < 5; ++i) { console.log(i); }25 _______46____227 6for (let i = 0; i < 5; ++i) { console.log(i); }29 20Đầu ra. for (let i = 0; i < 5; ++i) { console.log(i); }8 Ví dụ 2. Mã thông báo không mong muốn ',' xảy ra sau i=0 mà javascript không thể nhận ra. Chúng tôi có thể loại bỏ lỗi ở đây bằng cách loại bỏ thêm. jav 2 22 23 24 25 26expected expression, got ', '5 20Đầu ra. expected expression, got ', ' Ví dụ 3. Một mã thông báo không mong muốn ')' xảy ra sau i++ mà JavaScript không thể nhận ra. Chúng tôi có thể xóa lỗi ở đây bằng cách xóa thêm). jav 2 22 41 24 25 44expected expression, got ', '5 20Đầu ra for (let i = 0; i < 5,; ++i) { console.log(i); } // SyntaxError: expected expression, got ')'3 Ví dụ 4. Ở cuối phần thân của if, JavaScript đã mong đợi dấu ngoặc nhọn “}” nhưng thay vào đó, nó nhận được mã thông báo khác không mong muốn. Nếu chúng ta đặt } ở cuối phần thân của if. jav 2expected expression, got ', '7 49 50 51_______46____453____454 55 6 57 24expected expression, got ', '0____453____461 55 6expected expression, got ', '5 20Đầu ra for (let i = 0; i < 5; ++i) { console.log(i); }2 Tương tự, việc sử dụng bất kỳ mã thông báo nào không cần thiết sẽ gây ra loại lỗi này. Chúng tôi có thể loại bỏ lỗi này bằng cách ràng buộc bằng cách tuân theo các quy tắc lập trình của JavaScript. Ghi chú cá nhân của tôi arrow_drop_up Tiết kiệm Vui lòng Đăng nhập để nhận xét.Mã thông báo trong JavaScript là gì?Mã thông báo. Đây là các từ hoặc ký hiệu được mã sử dụng để chỉ định logic của ứng dụng . Chúng bao gồm +, -, ?, nếu, khác và var. Chúng được dành riêng bởi công cụ JavaScript và không thể bị lạm dụng. Chúng cũng không thể được sử dụng như một phần của tên biến.
Mã thông báo không hợp lệ hoặc không mong muốn là gì?Nguyên nhân của Lỗi Cú pháp. Lỗi mã thông báo không mong muốn
. Trong một số trường hợp, lỗi cũng có thể do cấu hình sai hoặc không tương thích với trình duyệt hoặc môi trường phát triển. typically, the error is caused by a typo or incorrect code. In some cases, the error may also be caused by a misconfiguration or incompatibility with the browser or development environment.
JavaScript nhận dạng không mong muốn là gì?"Lỗi cú pháp không bắt buộc. Lỗi định danh không mong đợi" thường xảy ra do từ khóa viết sai chính tả, thiếu toán tử hoặc thiếu dấu phẩy . Từ khóa trong JavaScript bao gồm các từ như let , class , function , const. Những từ này có một ý nghĩa đặc biệt trong ngôn ngữ và là một phần của cú pháp.
Mã thông báo bất ngờ VAR là gì?Giống như các ngôn ngữ lập trình khác, JavaScript đã xác định một số quy tắc lập trình phù hợp. Không theo dõi họ ném một lỗi. Mã thông báo không mong muốn xảy ra nếu mã JavaScript thiếu hoặc thừa ký tự { like, ) + – var if-else var etc} . Mã thông báo không mong muốn tương tự như lỗi cú pháp nhưng cụ thể hơn. |