Template literals używają backticks (`) i dodają dwie rzeczy, których brakuje zwykłym cudzysłowom: interpolacja wyrażeń i wielowierszowe ciągi znaków.
js
name = ;
count = ;
msg = ;
total = ;
html = ;
Template literals używają backticks (`) i dodają dwie rzeczy, których brakuje zwykłym cudzysłowom: interpolacja wyrażeń i wielowierszowe ciągi znaków.
name = ;
count = ;
msg = ;
total = ;
html = ;
Przed template literals pisałbyś "Hi " + name + ", " + count + ... — gadatliwe i podatne na błędy. Interpolacja jest znacznie bardziej czytelna.
Funkcja umieszczona przed backticks otrzymuje części ciągu i interpolowane wartości, pozwalając jej je przetworzyć:
function highlight(strings, ...values) {
return strings.reduce((out, s, i) =>
out + s + (values[i] ? `<b>${values[i]}</b>` : ""), "");
}
highlight`Hello ${name}!`; // "Hello <b>Ann</b>!"
To napędza biblioteki takie jak styled-components oraz pomocniki bezpiecznego escapowania SQL/HTML.
Template literals to dzisiaj standardowy sposób na budowanie ciągów znaków — czytelna interpolacja, łatwy tekst wielowierszowy i hook (tagged templates) dla DSL-ów.