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

JavaScript: Variablen mit „const“, „let“ oder „var“ erstellen

In der Welt des Programmierens sind Variablen unerlässliche Grundbausteine. Sie funktionieren wie kleine Behälter, in denen Daten gespeichert werden können. In JavaScript, einer der wichtigsten Programmiersprachen für Webseiten und Anwendungen, gibt es drei verschiedene Möglichkeiten, Variablen zu erstellen: mit const, let oder var. Jede dieser Deklarationsarten hat ihre eigenen Besonderheiten und Einsatzbereiche. Dieser Artikel erklärt die Unterschiede verständlich und zeigt praktische Beispiele.



Was sind Variablen?

Bevor wir in die Details einsteigen, sollten wir verstehen, was Variablen überhaupt sind. Stell Dir eine Variable wie eine beschriftete Schachtel vor. Du gibst der Schachtel einen Namen und kannst verschiedene Dinge hineinlegen – Zahlen, Texte oder komplexere Informationen. Später kannst Du auf den Inhalt dieser Schachtel zugreifen, indem Du ihren Namen verwendest.

In JavaScript dienen Variablen zum Speichern von Informationen, die Du später im Programm wiederverwenden möchtest.



Die drei Arten der Variablendeklaration

JavaScript bietet drei verschiedene Schlüsselwörter, um Variablen zu erstellen: const, let und var. Jedes dieser Wörter hat besondere Eigenschaften und wird in bestimmten Situationen bevorzugt.

1. Variablen mit const

Das Wort const kommt von „konstant“ und bedeutet unveränderlich. Eine mit const erstellte Variable kann nach ihrer Erstellung nicht mehr verändert werden. Ihr Wert bleibt konstant.

const meinName = "Maria";
const geburtsjahr = 1990;
const lieblingsfarbe = "Blau";

Wichtige Eigenschaften von const:

  • Der Wert kann nach der Zuweisung nicht mehr geändert werden
  • Du musst sofort einen Wert zuweisen
  • Die Variable ist nur innerhalb des Blocks verfügbar, in dem sie erstellt wurde (Blockgültigkeit). Was unter einem Block verstanden wird, das werden wir später noch sehr genau behandeln.

Versuchst Du, den Wert einer const-Variable zu ändern, erhältst Du eine Fehlermeldung:

const meinAlter = 30;
meinAlter = 31; // Fehler: Zuweisung zu einer konstanten Variable

Besonders wichtig: Bei komplexen Datentypen wie Objekten und Arrays (die wir noch ausführlich behandeln werden) bleibt die Variable selbst konstant, aber die Inhalte können geändert werden:

const meineFruechte = ["Apfel", "Banane"];
meineFruechte.push("Orange"); // Erlaubt: Der Inhalt wird verändert
console.log(meineFruechte); // Ausgabe: ["Apfel", "Banane", "Orange"]

meineFruechte = ["Kirsche"]; // Fehler: Die Variable selbst darf nicht neu zugewiesen werden

2. Variablen mit let

let ermöglicht es, veränderbare Variablen zu erstellen. Der Wert kann jederzeit geändert werden.

let alter = 25;
alter = 26; // Erlaubt: Der Wert wird aktualisiert

Wichtige Eigenschaften von let:

  • Der Wert kann nach der Erstellung geändert werden
  • Die Zuweisung eines Anfangswerts ist optional
  • Die Variable ist nur innerhalb des Blocks verfügbar, in dem sie erstellt wurde (Blockgültigkeit)

let ist besonders nützlich für Werte, die sich im Laufe des Programms ändern können:

let punktzahl = 0;
punktzahl = punktzahl + 10; // Punktzahl wird erhöht
console.log(punktzahl); // Ausgabe: 10

let benutzername;
console.log(benutzername); // Ausgabe: undefined
benutzername = "Max"; // Später einen Wert zuweisen

3. Variablen mit var

var ist die älteste Methode, um Variablen in JavaScript zu erstellen. Moderne Programme verwenden eher const und let, aber zum Verständnis älterer Programme ist die Kenntnis von var wichtig.

var message = "Hallo";
var anzahl = 42;

Wichtige Eigenschaften von var:

  • Der Wert kann geändert werden
  • Die Zuweisung eines Anfangswerts ist optional
  • Die Variable ist innerhalb der gesamten Funktion verfügbar (Funktionsgültigkeit)
  • Variablen können vor ihrer Deklaration verwendet werden (Hoisting)
var temperatur = 20;
temperatur = 22; // Erlaubt: Der Wert wird aktualisiert

function wetterBericht() {
var temperatur = 19; // Neue Variable innerhalb der Funktion
console.log(temperatur); // Ausgabe: 19
}

console.log(temperatur); // Ausgabe: 22 (die äußere Variable)

Die Unterschiede im Überblick

Nun schauen wir uns die wichtigsten Unterschiede zwischen den drei Deklarationsarten genauer an.

Gültigkeitsbereich (Scope)

Der Gültigkeitsbereich bestimmt, wo im Code eine Variable verwendet werden kann.

  • const und let haben Blockgültigkeit. Sie sind nur innerhalb des Blocks (zwischen geschweiften Klammern {}) verfügbar, in dem sie deklariert wurden. Dazu später mehr.
  • var hat Funktionsgültigkeit. Diese Variablen sind in der gesamten Funktion verfügbar, auch außerhalb von Blöcken.

Beispiel zur Blockgültigkeit anhand einer einfachen Wenn-Abfrage:

if (true) {
const x = 10;
let y = 20;
var z = 30;
}

// console.log(x); // Fehler: x ist außerhalb des Blocks nicht verfügbar
// console.log(y); // Fehler: y ist außerhalb des Blocks nicht verfügbar
console.log(z); // Ausgabe: 30 - var-Variablen ignorieren Blockgrenzen

Neuzuweisung

Die Möglichkeit, den Wert einer Variable zu ändern, unterscheidet sich:

  • const: Keine Neuzuweisung möglich
  • let und var: Neuzuweisung jederzeit möglich
const beständig = 100;
// beständig = 200; // Fehler

let veränderbar = 100;
veränderbar = 200; // Funktioniert

var altmodisch = 100;
altmodisch = 200; // Funktioniert ebenfalls

Deklaration ohne Initialisierung

Die Anforderung, sofort einen Wert zuzuweisen:

  • const: Muss sofort initialisiert werden
  • let und var: Können ohne Anfangswert deklariert werden
// const unvollständig; // Fehler: const benötigt einen Anfangswert

let leer; // Erlaubt, Wert ist "undefined"
var ebenfallsLeer; // Erlaubt, Wert ist "undefined"

Hoisting

Hoisting bezeichnet das Verhalten, Variablen vor ihrer tatsächlichen Deklaration im Code zu verwenden:

  • var: Wird „gehoisted“ (angehoben), kann vor der Deklaration verwendet werden
  • const und let: Werden nicht „gehoisted“, müssen vor der Verwendung deklariert werden
console.log(alteVariable); // Ausgabe: undefined (nicht empfohlener Stil)
var alteVariable = "Ich bin gehoisted";

// console.log(neueVariable); // Fehler: Zugriff vor der Initialisierung
let neueVariable = "Ich bin nicht gehoisted";


Wann solltest Du welche Deklarationsart verwenden?

Die Wahl zwischen const, let und var hängt von Deinen Anforderungen ab. Hier sind einige Richtlinien:

Verwende const (empfohlen):

  • Für Werte, die sich nicht ändern sollen
  • Für die meisten Variablen als Standardwahl
  • Um unbeabsichtigte Änderungen zu vermeiden
const PI = 3.14159;
const MEHRWERTSTEUER = 0.19;
const konfiguration = { theme: "dark", sprache: "Deutsch" };

Verwende let:

  • Für Variablen, deren Werte sich ändern werden
  • Für Schleifenzähler oder Akkumulatoren
  • Wenn eine Variable zunächst ohne Wert deklariert werden muss
let counter = 0;
for (let i = 0; i < 10; i++) {
counter = counter + 1;
}

let benutzereingabe;
// Später im Programm:
benutzereingabe = "Text vom Benutzer";

Verwende var (weniger empfohlen):

  • In älterem Code (vor 2015)
  • Wenn Du bewusst Funktionsgültigkeit statt Blockgültigkeit benötigst

In modernem JavaScript wird var selten eingesetzt und sollte durch const oder let ersetzt werden.

Zusammenfassung

Die Wahl zwischen const, let und var ist ein wichtiger Schritt beim Programmieren mit JavaScript:

  • const ist ideal für unveränderliche Werte und sollte bevorzugt werden
  • let eignet sich für veränderliche Werte und hat Blockgültigkeit
  • var ist die ältere Option mit Funktionsgültigkeit und sollte in neuem Code vermieden werden

Durch die richtige Wahl der Variablendeklaration wird Dein Code robuster und leichter zu verstehen. Die Blockgültigkeit von const und let verhindert zudem viele typische Fehler, die bei der Verwendung von var auftreten können.

Mit diesen Kenntnissen bist Du gut gerüstet, um Variablen in JavaScript effektiv einzusetzen und qualitativ hochwertigen Code zu schreiben.