メインコンテンツにスキップ
モジュール 2 · レッスン 1 / 4コース内の 5/32~8 min
モジュールのレッスン (1/4)

文字列とテンプレートリテラル

文字列は文字のシーケンスです。 JavaScript では区切ることができます 3 つの方法で、すべてエンジンと同等ですが、1 つのスーパーパワーを備えています。 バッククォート用に予約されています:

JS
'single quotes';
'double quotes';
`backticks — template literals`;

一重引用符と二重引用符は交換可能です。どちらでも使用できる方を使用してください。 テキスト内の他の文字をエスケープしないようにしてください。

JS
'L\'isola'; // the apostrophe needs to be escaped
"L'isola"; // here it doesn't
"He said \"hi\"";
'He said "hi"';

エスケープ文字

任意の文字列内に、「印刷不可能な」文字を挿入できます。 バックスラッシュ:

  • \n — 改行
  • \t — タブ
  • \\ — リテラルのバックスラッシュ
  • \' / \" — リテラルの一重引用符/二重引用符
JS
console.log('line 1\nline 2');
// line 1
// line 2

テンプレート リテラル: デフォルトで使用する構文

バッククォート は、他の区切り文字では不可能な 2 つのことを可能にします。

  1. エスケープなしの複数行文字列: リテラル改行が許可されます。
  2. 補間: ${ … } 内に任意の JS 式を配置でき、 その値が結果に貼り付けられます。
JS
const nome = 'Anna';
const eta = 28;

const messaggio = `Ciao ${nome}, hai ${eta} anni.
Fra un anno ne avrai ${eta + 1}.`;

${ … } 内の式は単純な名前である必要はありません。 関数呼び出しや演算子など、値を生成するものすべて。

+ との連結

歴史的に、文字列は + を使用して構成されていました。今でも使えて便利です まれなケースではあります (例: 複数のステップで文字列を構築する場合):

JS
const a = 'Ciao';
const b = 'mondo';
a + ', ' + b + '!'; // 'Ciao, mondo!'

試してみてください

運動#js.m2.l1.e1
試行回数: 0読み込み中…

`name = 'Luca'` および `age = 30` とすると、テンプレート リテラルを使用して文字列 'Luca ha 30 anni' を作成します。 (まさにこのテキスト) を最後の式として使用します。

エディターを読み込み中…
ヒントを表示

バッククォートと ${...} 補間を使用して、文字列に値を挿入します。

3 回の試行後に解決策が利用可能になります

復習演習

運動#js.m2.l1.e2
試行回数: 0読み込み中…

2 つの価格 `p1 = 7.5` と `p2 = 3.20` を指定すると、最後の式として文字列 'Totale: 10.7 euro' を返します。

エディターを読み込み中…
ヒントを表示

${...} 内には、p1 + p2 を含む任意の式を入れることができます。

3 回の試行後に解決策が利用可能になります