javascript エラー「SyntaxError: Unexpected EOF」の解決方法

javascript エラー「SyntaxError: Unexpected EOF」の解決方法

javascriptで、エラー「SyntaxError: Unexpected EOF」が発生した場合の原因と解決方法を記述してます。

環境

  • OS macOS Monterey
  • ブラウザ safari 15.5

エラー内容

以下のコードで発生。

let str = 'hoge
          hoge
          hoge';

エラーメッセージ

SyntaxError: Unexpected EOF

画像

firefox(バージョン105)では、以下のエラーとなります。

Uncaught SyntaxError: '' string literal contains an unescaped line break

画像

原因

関数の名前を定義していないため

解決方法

テンプレートリテラルを使用するか、

let str = `hoge
          hoge
          hoge`;

「\」を使用する。

let str = 'hoge\
          hoge\
          hoge';

同じエラーが発生するパターン

また、以下の「String.raw」を使用したコードでも同じエラーが発生します。

let str = String.raw`\var\www\`;
// SyntaxError: Unexpected EOF

「String.raw」で、最後に「\」がある場合は分割する必要があります。

let str = String.raw`\var\www` + '\\';

console.log(str); // \var\www\