新しく使えるようになった構文のひとつです。ヒアドキュメントのようなものです。最新版では既に使えるようになっています。含めたほとんどのモダンブラウザで利用可能です。(残念ながらモバイルブラウザではまだ非対応のこともあるので、要注意です。書くことができるということです。書くこともできるということです。エスケープせず、そのまま文字にしたいならString.raw!`~`の中では\nみたいなエスケープが可能ですが、場合によっては余計なお世話に感じることもあります。使わずに文字列を繋げていくことができます。文字として入れたいときもある。ようにエスケープします。関数を実行する構文なのです。Templates)と言います。ように関数を実行した場合、渡される引数がちょっと変わっています。どんな引数が渡されるのか、以下を例にとってみてみましょう。(Number型)*/第1引数には文字列の配列が入っています。エスケープされていない文字列の配列が入っています。中身で評価された式の値が順に入っています。(String型に変換されていない点に注意です。自前で定義すると以下のようになります。エスケープとかに使えます。弱点エスケープせずそのままの文字を表現できるという魅力がありますが、全ての文字を表現できるわけではありません。終わるようにはできません。エスケープされているとみなされ、テンプレートリテラルが終わらないからです。以下のように書けば解決しますが、あまりスマートではありませんね...。テンプレートリテラル、改善の余地があると感じます。タグ付きテンプレートリテラルで渡される第一引数の性質タグ付きテンプレートリテラル(func`~`)で渡される第一引数には、以下の変わった性質があります。rawの文字列の配列の要素がすべて一致する場合、何度実行しても同じ配列オブジェクトを参照する以上の性質を示すコードが以下になります。中に改行を入れた時、改行コードを意識しないといけないのかというと、その必要はありません。統一されるのですが...。これはまた別の機会に。ショートコーディングタグ付きテンプレートリテラルの性質を使えば、面白いショートコーディングができます。