首頁 > web前端 > js教程 > 儘管代碼明顯正確,為什麼我會收到'意外令牌非法”錯誤?

儘管代碼明顯正確,為什麼我會收到'意外令牌非法”錯誤?

Linda Hamilton
發布: 2024-12-18 06:50:11
原創
101 人瀏覽過

Why Am I Getting an

「意外令牌非法」錯誤的隱形原因

語法錯誤

當程式碼在解釋過程中被分解為稱為「令牌」的元素時,那些無法分類的被標記為「非法」。此錯誤也可能由於流氓字元或放錯位置的符號而發生。

不可見字元

雖然您的程式碼看起來很簡單,但稱為零寬度空格字元 (ZWSP) 的不可見 Unicode 字元可能是潛伏在分號之後。該字元可能會導致 Unexpected token ILLEGAL JavaScript 語法錯誤。

ZWSP 的起源

像 jsfiddle 這樣的工具經常引入 ZWSP 來控制自動換行。雖然較新版本的 jsfiddle 和 Chrome 開發者工具已經解決了這個問題,但仍然值得檢查一下。

如何發現 ZWSP

要驗證 ZWSP 是否存在,請使用顯示不可見的編輯器字元(例如 Vim)。 jsbin 和 CodePen.io 等線上偵錯工具也會將 ZWSP 反白顯示為紅點。

相關問題

ZWSP 也會導致:

  • HTML 中出現額外空格
  • 因為無法辨識而導致 CSS樣式錯誤字元
  • 空字串檢查中的誤報

ECMAScript 規範

ECMAScript 規範將類似字元(U 200C 和U 200D)列為某些特定範圍之外的有效IdentifierParts上下文。然而,U 200B 並未明確提及。實作將其視為意外標記,導致語法錯誤。

以上是儘管代碼明顯正確,為什麼我會收到'意外令牌非法”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板