28 ES6+ Funktionen in TypeScript

In TypeScript, einer Obermenge von JavaScript, können Sie die neuesten ES6+ Funktionen nutzen. Diese Funktionen tragen dazu bei, Ihren Code sauberer, lesbarer und effizienter zu machen und bieten verbesserte Typsicherheit sowie Werkzeugunterstützung. Hier sind einige dieser Funktionen, erweitert um aktuelle Informationen und Beispiele:

28.1 Arrow Functions

Pfeilfunktionen (Arrow Functions) bieten eine kompakte Syntax zur Funktionsdefinition und eine lexikalische Bindung von this. Anders als herkömmliche Funktionen binden sie this zum Zeitpunkt der Funktionsdefinition und nicht basierend auf dem Aufrufkontext:

const add = (a: number, b: number): number => a + b;
console.log(add(1, 2));  // Ausgabe: 3

28.2 Standardparameter

Standardparameter in Funktionen erhöhen die Flexibilität und Lesbarkeit, indem sie Standardwerte definieren, falls keine Argumente übergeben oder undefined übergeben wird:

function greet(name: string = 'Friend'): void {
  console.log(`Hello, ${name}!`);
}

greet();  // Ausgabe: "Hello, Friend!"
greet('Alice');  // Ausgabe: "Hello, Alice!"

28.3 Rest-Parameter und Spread-Operator

Der Rest-Parameter ermöglicht die Behandlung einer unbestimmten Anzahl von Argumenten als Array. Der Spread-Operator erleichtert das Übergeben von Array-Elementen als separate Argumente:

function sum(...nums: number[]): number {
  return nums.reduce((acc, num) => acc + num, 0);
}

const numbers = [1, 2, 3, 4, 5];
console.log(sum(...numbers));  // Ausgabe: 15

Diese Funktionen sind besonders nützlich für das Zusammenführen von Arrays oder Objekten.

28.4 Template Strings

Template Strings vereinfachen das Erstellen von Zeichenketten, auch mehrzeilige, und erlauben das Einbetten von Ausdrücken, was die Lesbarkeit erhöht:

let name: string = 'Alice';
let greeting: string = `Hello, ${name}!`;
console.log(greeting);  // Ausgabe: "Hello, Alice!"

28.5 Destructuring Assignment

Destructuring ermöglicht das einfache Extrahieren von Werten aus Arrays oder Objekteigenschaften in separate Variablen, auch bei verschachtelten Strukturen:

let [first, second, third] = [1, 2, 3];
console.log(second);  // Ausgabe: 2

let { name, age } = { name: 'Alice', age: 25 };
console.log(name);  // Ausgabe: "Alice"

28.6 Weitere Überlegungen

Diese ES6+ Funktionen und viele andere in TypeScript tragen wesentlich zur Verbesserung der Entwicklungserfahrung und Codequalität bei.