Direkt zum Hauptinhalt springen
eLearner.app
Modul 2 · Lektion 1 von 45/32 im Kurs~8 min
Lektionen des Moduls (1/4)

Strings und Template-Literale

Strings (Zeichenketten) sind Sequenzen von Zeichen. In JavaScript kannst du sie auf drei verschiedene Arten begrenzen, die für die Engine alle gleichwertig sind – aber Backticks besitzen eine Superkraft:

JS
'apici singoli';
'apici doppi';
`backtick — i template literal`;

Einfache und doppelte Anführungszeichen sind austauschbar: Verwende dasjenige, mit dem du das jeweils andere Zeichen im Text nicht maskieren (escapen) musst:

JS
'L\'isola'; // l'apostrofo richiede escape
"L'isola"; // qui no
"Lui disse \"ciao\"";
'Lui disse "ciao"';

Maskierungszeichen (Escape characters)

Innerhalb jedes Strings kannst du "nicht druckbare" Zeichen mit dem Backslash einfügen:

  • \n — a capo
  • \t — tabulazione
  • \\ — una backslash letterale
  • \' / \" — apice singolo / doppio letterale
JS
console.log('riga 1\nriga 2');
// riga 1
// riga 2

Template-Literale: Die Syntax, die du standardmäßig verwenden solltest

Die Backticks schalten zwei Dinge frei, die mit den anderen Begrenzern unmöglich sind:

  1. Mehrzeilige Strings ohne Maskierung: Zeilenumbrüche im Text sind direkt erlaubt.
  2. Interpolation: Innerhalb von ${ … } kannst du jeden beliebigen JS-Ausdruck einfügen, und sein Wert wird in das Ergebnis eingefügt.
JS
const nome = 'Anna';
const eta = 28;

const messaggio = `Ciao ${nome}, hai ${eta} anni.
Fra un anno ne avrai ${eta + 1}.`;

Der Ausdruck innerhalb von ${ … } muss kein einfacher Name sein: Es kann alles sein, was einen Wert liefert, einschließlich Funktionsaufrufe und Operatoren.

Verkettung mit +

Historisch wurden Strings mit + zusammengefügt. Das funktioniert immer noch und ist in seltenen Fällen nützlich (z. B. beim schrittweisen Aufbau eines Strings):

JS
const a = 'Ciao';
const b = 'mondo';
a + ', ' + b + '!'; // 'Ciao, mondo!'

Probier es aus

Übung#js.m2.l1.e1
Versuche: 0Wird geladen…

Erstelle unter Verwendung der Variablen `name = 'Luca'` und `age = 30` mit einem Template-Literal den String 'Luca ha 30 anni.' (genau diesen Text) als letzten Ausdruck.

Editor wird geladen…
Hinweis anzeigen

Verwende Backticks und die Interpolation ${...}, um die Werte in den String einzufügen.

Lösung nach 3 Versuchen verfügbar

Wiederholungsübung

Übung#js.m2.l1.e2
Versuche: 0Wird geladen…

Gib für die zwei Preise `p1 = 7.5` und `p2 = 3.20` als letzten Ausdruck den String 'Totale: 10.7 euro' zurück.

Editor wird geladen…
Hinweis anzeigen

Innerhalb von ${...} kannst du jeden beliebigen Ausdruck platzieren, auch p1 + p2.

Lösung nach 3 Versuchen verfügbar