javascript \nをエスケープせずに文字列として扱う
- 作成日 2020.11.30
- 更新日 2022.07.25
- javascript
- javascript
javascriptで、String.rawを用いて\nをエスケープせずに文字列として扱うサンプルコードを記述してます。
環境
- OS windows10 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 103.0.5060.134
String.raw使い方
String.rawを使用すると、エスケープせずに\nを文字列として扱うことが可能です。
// 通常
let str1 = 'hello\nworld';
// エスケープする
let str2 = 'hello\\nworld';
// String.rawを使用する
let str3 = String.raw`hello\nworld`;
console.log(str1);
console.log(str2);
console.log(str3);
実行結果
String.rawを使用すると、以下の全てを文字列として扱うことができます。
let str = String.raw`!"#$%&\n\r\s\b`;
console.log(str);
実行結果
ただし、最後に「 \ 」があるとエラーとなります。
let str = String.raw`\var\www\`;
console.log(str);
chrome 103.0.5060.134
Uncaught SyntaxError: Unexpected end of input
firefox 102では、以下のエラーが発生します。
Uncaught SyntaxError: `` literal not terminated before end of script
なので、最後に「\」がある場合は、以下のようにする必要があります。
let str = String.raw`\var\www` + '\\';
console.log(str);
実行結果
-
前の記事
docker-composeを利用してidempiereを構築する 2020.11.29
-
次の記事
php8.0 Constructor Property Promotionを使用する 2020.11.30
コメントを書く