Sobes.tech
Junior

Co jsou to šablonové literály a k čemu se používají?

sobes.tech AI

Odpověď od AI

Šablonové literály (template literals), tiež známe ako šablónové reťazce, sú syntaktický cukor v JavaScripte, ktorý umožňuje vkladanie výrazov do reťazcov pomocou spätných apostrofov (``).

Používajú sa na:

  1. Pohodlnejšiu interpoláciu premenných a výrazov do reťazcov:

    const name = "Svet";
    const greeting = `Ahoj, ${name}!`; // Vloženie premennej
    console.log(greeting); // Ahoj, Svet!
    
    const sum = 2 + 3;
    const result = `Súčet: ${sum}.`; // Vloženie výrazu
    console.log(result); // Súčet: 5.
    
  2. Vytváranie viacriadkových reťazcov bez použitia znaku pre nový riadok (\n):

    const multilineString = `
    Toto
    je
    viacriadkový
    reťazec.
    `;
    console.log(multilineString);
    
  3. Stavanie zložitých reťazcových výrazov, ako sú cesty k súborom alebo SQL dotazy, s lepšou čitateľnosťou:

    const userId = 123;
    const query = `SELECT * FROM users WHERE id = ${userId}`;
    console.log(query);
    
  4. Použitie označených šablón (tagged templates) na rozšírenú funkcionalitu: Označené šablóny umožňujú volať funkciu s literálom šablóny. Prvý argument funkcie je pole častí reťazcov a ďalšie argumenty sú hodnoty interpolovaných výrazov.

    function highlight(strings, ...values) {
      let str = '';
      strings.forEach((string, i) => {
        str += string;
        if (values[i]) {
          str += `<b>${values[i]}</b>`; // Napríklad zvýraznenie tučným
        }
      });
      return str;
    }
    
    const user = "Frontend";
    const role = "vývojár";
    const message = highlight`Ahoj, ${user}! Si ${role}.`;
    console.log(message); // Ahoj, <b>Frontend</b>! Si <b>vývojár</b>.
    

Takto šablónové literály robia prácu s reťazcami v JavaScripte flexibilnejšou, zrozumiteľnejšou a umožňujú vyhnúť sa zložitostiam spojeným s konkatenáciou reťazcov pomocou symbolu +.