Mathematische Operatoren und das „Math“-Objekt
Funktionen
Ausblick auf das DOM (Teil 1 von 2)

JavaScript: String-Interpolation in „Template Strings“

In JavaScript gibt es eine besondere Form von Strings, die sogenannten Template Strings. Diese bieten Vorteile gegenüber traditionellen Strings und erleichtern das Arbeiten mit Text erheblich.

Template Strings zeichnen sich durch die Verwendung spezieller Anführungszeichen, den Backticks (oder Back-Ticks: `\„), aus. Durch diese Syntax lassen sich Textblöcke flexibler und übersichtlicher gestalten. Im Folgenden erfährst Du mehr über die Grundlagen und Anwendungsmöglichkeiten von Template Strings in JavaScript.



Back-Tick-Syntax

Template Strings werden mit Backticks geschrieben, also nicht mit normalen Anführungszeichen (" oder '). Backticks sind ein spezielles Zeichen, das sich meist links neben der „1“-Taste auf der Tastatur befindet (`\„). Die Back-Tick-Syntax erlaubt es, Strings einfacher und übersichtlicher zu schreiben.

Beispiel:

const textMitBackticks = `Das ist ein Template String!`;
console.log(textMitBackticks); // Ausgabe: Das ist ein Template String!

Im Gegensatz zu normalen Strings kannst Du mit Backticks weitere nützliche Funktionen nutzen, wie Multiline-Strings und das Einfügen von Variablen oder Ausdrücken.



Multiline-Strings

Traditionelle Strings in JavaScript erlauben es nicht, Zeilenumbrüche innerhalb der Zeichenkette direkt einzufügen. Stattdessen musste man früher spezielle Sequenzen wie \n verwenden oder Strings umständlich miteinander verketten. Template Strings lösen dieses Problem. Mit Backticks kannst Du einfach mehrzeilige Strings erstellen, ohne Zusatzzeichen oder Verkettung.

Beispiel:

// Ein Multiline-String mit Backticks
const mehrzeilig = `Das ist ein
mehrzeiliger String.
Er braucht keine Tricks für Zeilenumbrüche.`;

console.log(mehrzeilig);
// Ausgabe:
// Das ist ein
// mehrzeiliger String.
// Er braucht keine Tricks für Zeilenumbrüche.

Dieser Ansatz ist besonders praktisch, wenn Du längere Texte schreiben möchtest, ohne auf Lesbarkeit zu verzichten.



Variable Substitution: Einfügen von Variablen

Eine große Stärke von Template-Strings ist die Fähigkeit, Werte von Variablen direkt in einen Text einzufügen. Dieser Vorgang wird String-Interpolation genannt. Dabei ersetzt JavaScript Platzhalter mit dem tatsächlichen Wert einer Variablen.

Die Syntax für Platzhalter ist einfach: Um eine Variable innerhalb eines Template Strings einzufügen, schreibst Du den Namen der Variablen in geschweifte Klammern ({}) und setzt ein $ davor. Diese Klammer schreibst Du direkt in den Text.

Beispiel:

const name = 'Anna';
const begrüßung = `Hallo, mein Name ist ${name}!`;

console.log(begrüßung); // Ausgabe: Hallo, mein Name ist Anna!

Hier ersetzt JavaScript den Ausdruck ${name} automatisch durch den Wert der Variablen . name



Expression Substitution: Einfügen von Ausdrücken

Neben Variablen kannst Du auch vollständige JavaScript-Ausdrücke in Template Strings einfügen. Das bedeutet, dass Du Berechnungen oder Funktionsaufrufe im String verwenden kannst. Auch dies geschieht mit der ${}-Syntax.

Beispiele:

// Vereinfachte Berechnung
const zahl = 4;
const ergebnis = `Die Verdoppelung von ${zahl} ergibt ${zahl * 2}.`;

console.log(ergebnis); // Ausgabe: Die Verdoppelung von 4 ergibt 8.

// Dynamische Funktionsaufrufe
const getAlter = () => 25;
const info = `Ich bin ${getAlter()} Jahre alt.`;

console.log(info); // Ausgabe: Ich bin 25 Jahre alt.

Mit dieser Technik kannst Du Strings dynamisch gestalten, ohne komplexen oder schwer lesbaren Code zu schreiben. Mit Funktionen werden wir uns noch genauer auseinandersetzen, sodass du das letzte Codebeispiel noch nicht verstehen musst.



HTML-Templates

Template Strings eignen sich hervorragend, um HTML-Inhalte zu erzeugen. Besonders bei der Arbeit mit Web-Anwendungen möchtest Du häufig dynamische Inhalte generieren. Diese lassen sich mit Template-Strings leicht in HTML-Strukturen umwandeln.

Beispiel:

const titel = 'Artikel';
const autor = 'Max Mustermann';
const inhalt = 'Dies ist der Inhalt des Artikels.';

const htmlTemplate = `
<article>
<h1>${titel}</h1>
<p>${inhalt}</p>
<footer>Geschrieben von: ${autor}</footer>
</article>
`;

console.log(htmlTemplate);

// Ausgabe:
// <article>
// <h1>Artikel</h1>
// <p>Dies ist der Inhalt des Artikels.</p>
// <footer>Geschrieben von: Max Mustermann</footer>
// </article>

Hier werden Variablen und HTML kombiniert. Mit wenig Aufwand kannst Du Elemente dynamisch erzeugen und sie leicht lesen und bearbeiten.



Vorteile zusammengefasst

Template Strings bieten zahlreiche praktische Vorteile:

  1. Lesbarkeit: Backticks machen den Code übersichtlicher und leichter verständlich.
  2. Multiline-Strings: Lange Texte mit Zeilenumbrüchen sind unkompliziert möglich.
  3. Variablen und Ausdrücke: Werte lassen sich direkt in den Text einfügen.
  4. HTML-Anwendungen: Dynamische HTML-Inhalte können schnell und flexibel erstellt werden.

Tipp: Nutze Template Strings immer dann, wenn Du komplexere Texte schreiben, Variablen, Funktionen oder Ausdrücke in Strings einfügen möchtest. Sie machen Deinen Code sauberer und effektiver.