Interpolacja stringów

Standardowo dane typu string wyglądają w następujący sposób:

const text = "Być albo nie być";

W porzednim zadaniu mieliśm jednak przypadki, gdy między ciągiem znaków w cudzysłowiu chcieliśmy użyć także zmiennych:

alert("Cena za bilety wynosi " + (amount * price));

Nie jest to jednak najwygodniejszy sposób zapisu. W ES6 pojawił się nowy sposób zapisu. Ciąg znaków znajduje się tu między backtickami (klawisz z tyldą). Zmienne zapisujemy między ciągiem znaków umieszczając go między nawaisy klamrowe poprzedzone symbolem dolara:

alert(`Cena za bilety wynosi ${amount * price}.`);

Prawda, że wygodniej? Zwłaszcza gdy mamy do wpisania dłuższy ciąg:

alert(`Niestety w tej chwili nie możemy sprzedać Ci ${tickets} biletów. Na sali zostało tylko ${seats} miejsc.`);

Jest to bardzo pomocne przy zapisywaniu markupu HTML, np. gdy chcemy wstawić bardziej skomplikowany element na stronę:

const aboutMovie = `
    <div class="container" id="movie-${movieIndex}">
        <h3>${movieTitle}</h3>
        <div class="movieDescritpion">
            <p>${movieDescription}</p>
            <img src=${moviePoster}/>
        </div>    
    </div>
`;

results matching ""

    No results matching ""