ES6+ Features, die jeder Entwickler kennen sollte
Seit ES6 ist JavaScript deutlich angenehmer geworden. Lerne Destructuring, Spread, Template Literals und weitere Features, die du täglich brauchst.
Mit ES6 (auch ECMAScript 2015 genannt) und den folgenden Versionen hat JavaScript einen riesigen Sprung gemacht. Viele Features machen deinen Code kürzer, lesbarer und sicherer. In diesem Beitrag stelle ich dir die wichtigsten modernen Features vor, die du im Alltag immer wieder brauchst.
Template Literals
Schluss mit umständlichem Zusammenkleben von Strings mit dem Plus-Zeichen. Mit Template Literals nutzt du Backticks und setzt Variablen direkt mit ${...} in den Text ein. Auch Zeilenumbrüche funktionieren ohne Tricks.
const name = "Max";
const alter = 30;
const text = `${name} ist ${alter} Jahre alt.`;
console.log(text); // Max ist 30 Jahre alt.Destructuring
Mit Destructuring entpackst du Werte aus Arrays oder Objekten in einzelne Variablen. Das spart viele Zeilen und macht den Code deutlich klarer.
// Aus einem Objekt
const person = { vorname: "Eva", stadt: "Köln" };
const { vorname, stadt } = person;
console.log(vorname); // Eva
// Aus einem Array
const farben = ["rot", "grün", "blau"];
const [erste, zweite] = farben;
console.log(zweite); // grünSpread und Rest
Die drei Punkte ... sind extrem vielseitig. Als Spread entpacken sie ein Array oder Objekt, etwa um Kopien zu erstellen oder Werte zusammenzuführen. Als Rest sammeln sie mehrere Werte in einem Array.
// Spread: Arrays zusammenführen
const a = [1, 2];
const b = [3, 4];
const zusammen = [...a, ...b]; // [1, 2, 3, 4]
// Spread: Objekt kopieren und erweitern
const basis = { x: 1 };
const erweitert = { ...basis, y: 2 }; // { x: 1, y: 2 }
// Rest: Argumente sammeln
function summe(...zahlen) {
return zahlen.reduce((s, n) => s + n, 0);
}
console.log(summe(1, 2, 3)); // 6Standardparameter
Funktionen können seit ES6 Standardwerte für Parameter haben. Wird kein Argument übergeben, greift der Standardwert. Das macht deinen Code robuster gegen fehlende Eingaben.
function gruss(name = "Gast") {
return `Hallo, ${name}!`;
}
console.log(gruss()); // Hallo, Gast!
console.log(gruss("Sophie")); // Hallo, Sophie!Optional Chaining und Nullish Coalescing
Diese beiden neueren Features ersparen dir viele Abfragen. Mit ?. greifst du sicher auf verschachtelte Eigenschaften zu, ohne einen Fehler zu riskieren, falls etwas fehlt. Mit ?? setzt du einen Standardwert, aber nur wenn der Wert null oder undefined ist.
const nutzer = { profil: { name: "Tim" } };
// Sicherer Zugriff
console.log(nutzer.profil?.name); // Tim
console.log(nutzer.adresse?.stadt); // undefined (kein Fehler)
// Standardwert nur bei null/undefined
const eingabe = 0;
const wert = eingabe ?? 10;
console.log(wert); // 0 (weil 0 gültig ist)Der Unterschied zu || ist wichtig: ?? behandelt 0 und einen leeren String als gültige Werte, während || diese als unwahr ansehen würde.
Fazit
Die modernen ES6+ Features sind heute aus keinem JavaScript-Projekt mehr wegzudenken. Template Literals, Destructuring, der Spread-Operator, Standardparameter sowie Optional Chaining und Nullish Coalescing machen deinen Code kürzer und sicherer. Du musst nicht alles auf einmal lernen, aber je öfter du sie nutzt, desto natürlicher werden sie. Schau dir bei fremdem Code bewusst an, welche dieser Features verwendet werden, das festigt dein Verständnis.