Pelajaran modul (1/4)
String dan literal templat
String adalah rangkaian karakter. Dalam JavaScript Anda dapat membatasinya dalam tiga cara, semuanya setara dengan mesin — tetapi dengan satu kekuatan super disediakan untuk backtick:
'single quotes';
'double quotes';
`backticks — template literals`;Tanda kutip tunggal dan ganda dapat dipertukarkan: gunakan mana saja yang memungkinkan Anda hindari keluar karakter lain dalam teks Anda:
'L\'isola'; // the apostrophe needs to be escaped
"L'isola"; // here it doesn't
"He said \"hi\"";
'He said "hi"';Karakter melarikan diri
Di dalam string apa pun Anda dapat memasukkan karakter "tidak dapat dicetak" dengan a garis miring terbalik:
\n— baris baru\t— tab\\— garis miring terbalik\'/\"— kutipan tunggal / ganda literal
console.log('line 1\nline 2');
// line 1
// line 2Literal templat: sintaksis yang ingin Anda gunakan secara default
Backticks membuka dua hal yang tidak mungkin dilakukan dengan pembatas lainnya:
- String multiline tanpa pelolosan: baris baru literal diperbolehkan.
- Interpolasi: di dalam
${ … }Anda dapat menempatkan ekspresi JS apa pun dan nilainya disisipkan ke dalam hasil.
const nome = 'Anna';
const eta = 28;
const messaggio = `Ciao ${nome}, hai ${eta} anni.
Fra un anno ne avrai ${eta + 1}.`;Ekspresi di dalam ${ … } tidak harus berupa nama sederhana: bisa juga
segala sesuatu yang menghasilkan nilai, termasuk pemanggilan fungsi dan operator.
Penggabungan dengan +
Secara historis string disusun dengan +. Ini masih berfungsi dan berguna
dalam kasus yang jarang terjadi (misalnya membuat string dalam beberapa langkah):
const a = 'Ciao';
const b = 'mondo';
a + ', ' + b + '!'; // 'Ciao, mondo!'Cobalah
Diberikan `nama = 'Luca'` dan `usia = 30`, buatlah string 'Luca ha 30 anni' dengan templat literal. (persis teks ini) sebagai ungkapan terakhir.
Tunjukkan petunjuk
Gunakan backticks dan interpolasi ${...} untuk memasukkan nilai ke dalam string.
Solusi tersedia setelah 3 upaya
Tinjau latihan
Diberikan dua harga `p1 = 7,5` dan `p2 = 3,20`, kembalikan string 'Total: 10,7 euro' sebagai ekspresi terakhir.
Tunjukkan petunjuk
Di dalam ${...} Anda dapat memasukkan ekspresi apa pun, termasuk p1 + p2.
Solusi tersedia setelah 3 upaya