JavaScript-Grundlagen: Variablen mit let, const und var
Lerne den Unterschied zwischen let, const und var kennen und erfahre, welche Variablen-Deklaration du in modernem JavaScript wann einsetzen solltest.
Wenn du mit JavaScript startest, stolperst du sofort über Variablen. Sie sind die Behälter, in denen du Daten speicherst: Zahlen, Texte, Listen oder ganze Objekte. In JavaScript gibt es drei Schlüsselwörter, um Variablen zu deklarieren: var, let und const. In diesem Beitrag zeige ich dir, wie sie sich unterscheiden und welche du im Alltag wirklich brauchst.
Was ist eine Variable überhaupt?
Eine Variable ist ein benannter Platz im Speicher, in dem ein Wert liegt. Du gibst ihr einen Namen, weist ihr einen Wert zu und kannst diesen Namen später wiederverwenden. Das spart Tipparbeit und macht deinen Code lesbar.
let name = "Anna";
let alter = 28;
console.log(name + " ist " + alter + " Jahre alt.");
// Ausgabe: Anna ist 28 Jahre alt.Hier speicherst du einen Text in name und eine Zahl in alter. Beide kannst du später einfach über ihren Namen ansprechen.
const: für Werte, die sich nicht ändern
Mit const deklarierst du eine Konstante. Ihr Wert kann nach der Zuweisung nicht mehr neu zugewiesen werden. Das ist deine erste Wahl, wann immer ein Wert gleich bleiben soll.
const mwst = 0.19;
const begruessung = "Hallo Welt";
// Das hier führt zu einem Fehler:
// mwst = 0.20;
// TypeError: Assignment to constant variable.Ein wichtiger Hinweis: Bei Objekten und Arrays schützt const nur die Variable selbst, nicht den Inhalt. Du kannst also weiterhin Elemente verändern:
const farben = ["rot", "blau"];
farben.push("gruen"); // Das funktioniert!
console.log(farben); // ["rot", "blau", "gruen"]
// Aber das nicht:
// farben = ["gelb"]; // TypeErrorlet: für Werte, die sich ändern
Wenn du weißt, dass sich ein Wert im Laufe des Programms ändert, nutze let. Typische Fälle sind Zähler, Zwischenergebnisse oder Werte, die in einer Schleife angepasst werden.
let punkte = 0;
punkte = punkte + 10;
punkte += 5;
console.log(punkte); // 15
for (let i = 0; i < 3; i++) {
console.log("Durchlauf " + i);
}var: das alte Schlüsselwort
Vor ES6 (2015) gab es nur var. Heute solltest du es meiden, weil es sich anders verhält und leicht zu Fehlern führt. Der Hauptunterschied liegt im sogenannten Scope, also dem Gültigkeitsbereich. Variablen mit let und const gelten nur innerhalb des Blocks (zwischen geschweiften Klammern), var hingegen kennt nur Funktions-Scope.
if (true) {
var a = 1;
let b = 2;
}
console.log(a); // 1 (var "entkommt" dem Block)
// console.log(b); // ReferenceError: b is not definedDieses Verhalten überrascht viele Anfänger und ist eine häufige Fehlerquelle. Deshalb gilt die einfache Regel: vergiss var.
Die einfache Faustregel für die Praxis
Du musst nicht lange überlegen. Halte dich an diese Reihenfolge:
- Nutze standardmäßig
constfür alles. - Wechsle zu
let, wenn du den Wert später neu zuweisen musst. - Verwende
vargar nicht mehr in neuem Code.
Mit dieser Regel schreibst du automatisch sicheren und gut lesbaren Code. Andere Entwickler erkennen sofort an const, dass sich ein Wert nicht ändert.
Fazit
Variablen sind das Fundament jedes JavaScript-Programms. Merke dir: const für unveränderliche Werte, let für veränderliche und var bleibt in der Vergangenheit. Wenn du diese Faustregel verinnerlichst, vermeidest du von Anfang an typische Stolperfallen rund um den Gültigkeitsbereich. Probiere die Beispiele ruhig selbst in der Browser-Konsole aus, das festigt das Wissen am besten.