Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】SyntaxError: string literal contains an unescaped line breakエラーの使い方

SyntaxError: string literal contains an unescaped line breakエラーの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

SyntaxError: string literal contains an unescaped line breakオブジェクトは、JavaScriptのコードを解析する段階で発生する構文エラーを表すオブジェクトです。このエラーは、シングルクォート (') またはダブルクォート (") で囲まれた文字列リテラルの内部に、エスケープ処理されていない改行コードが含まれている場合に発生します。

JavaScriptの言語仕様では、通常、これらのクォートを使って定義された文字列リテラルは一行で記述される必要があります。これは、文字列の開始と終了地点を明確にし、コードの可読性や一貫性を保つための重要なルールです。もし開発者が文字列の途中で改行を入力し、それを明示的にエスケープ文字(例: \n)で処理しなかった場合、JavaScriptエンジンは文字列の終端を正しく認識できなくなり、構文が誤っていると判断してこのSyntaxErrorを発生させます。

このエラーが発生した場合、JavaScriptエンジンはコードの構文を適切に解析できないため、プログラムの実行は中断され、期待通りの動作を行うことができません。

このエラーを解決するためには、いくつかの方法があります。一つは、文字列内の改行を\nのようなエスケープシーケンスに置き換えることです。もう一つは、ECMAScript 2015(ES6)以降で導入されたテンプレートリテラルを使用することです。テンプレートリテラルはバッククォート (`) で囲まれた文字列であり、その内部に直接改行を含めることができるため、複数行にわたる文字列を記述する際に非常に便利です。また、文字列を複数行に分割し、それぞれの行をプラス記号(+)で結合する方法も有効です。

システムエンジニアを目指す初心者の皆様は、JavaScriptで文字列を記述する際、特にシングルクォートやダブルクォートを使用する場合は、誤って文字列の途中で改行を入力してしまわないよう注意が必要です。複数行の文字列を扱う際には、テンプレートリテラルの活用を積極的に検討することをお勧めします。

構文(syntax)

1const multiLineString = `This is a
2multi-line string
3that avoids a SyntaxError.`;

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ

関連プログラミング言語