こんにちは、ryohei(@ityryohei)です!

本記事では、JavaScriptで文字列の中に改行やタブといったエスケープシーケンスを含ませる方法をご紹介しています。

JavaScriptで文字列の中に改行やタブを入れたいんだけど、どうすればいいの?

上記の疑問にお答えしています。

では、解説していきます。

文字列の中に改行やタブを含ませる

下記は、文字列の中に改行とタブを含ませたサンプルです。

改行

let str = 'Hello\nWorld!';
console.log(str);

//実行結果
"Hello
World!"

タブ

let str = 'Hello\tWorld!';
console.log(str);

//実行結果
"Hello World!"

実行結果を確認すると、改行とタブ、どちらも想定した文字列が出力されているかと思います。出力時に改行やタブに置き換わっている部分には「\ + 文字」の形で特殊な文字が入力されています。これはエスケープシーケンスと呼ばれるもので、予めJavaScript側で用意されている特殊な文字を表す文字列になります。

もう少し詳しくお話ししますね。

エスケープシーケンスとは

エスケープシーケンスとは、キーボードの入力では表現できない文字を「\ + 文字」の形で表せるようにした特別な文字列を指します。前項の改行やタブを出力した\n\tがエスケープシーケンスになります。改行やタブの他にも何種類か用意されています。

エスケープシーケンス一覧

下記は、JavaScriptで利用できるエスケープシーケンスです。

\b バックスペース
\t 水平タブ
\t 垂直タブ
\n 改行
\f 改ページ
\r 復帰
\' シングルクォート
\" ダブルクォート
\` バッククォート
\\ バックスラッシュ
\0 NULL
\xXX 2桁16進数の「Latin-1」文字列
\uXXXX 4桁16進数の「Unicode」文字列
\u{XXXXX} 4桁16進数を超える「Unicode」文字列

全て覚えるのは大変かもしれないですが、シングルクォート、ダブルクォート、バッククォートに関しては現在ではキーボードの入力でも表現することができます。なので他に頻繁に使いそうな「改行」、「タブ」、「バックスペース」辺りを覚えておくと入力がスムーズに進みそうですね!

最後に

エスケープシーケンスは文字列を出力する際に表現の種類を増やしてくれる文字列です。「\ + 文字」で覚えやすいので、よく使うものは記憶に入れておくと良いかもしれないですね!

以上、JavaScriptで文字列の中に改行やタブを含ませる方法のご紹介でした!

JavaScriptを体系的に学びたい方

下記の参考書がおすすめです。私も勉強を始めた際に購入しました。入門書として必要な基礎から応用まで多様なサンプルを用いて解説されています。ページ数は多いですが、内容が伴っているのですらすら読めます。腰を据えて学びたい方に最良の一冊となっています。