TypeScript-Cheatsheet: Beherrschen Sie die Kernkonzepte und Best Practices

Installieren, Ausführen, Typen, Klassen, alles Grundlegende

Inhaltsverzeichnis

Hier ist mein prägnanter TypeScript-Schnellreferenz, der wichtige Konzepte, Syntax und Code-Beispiele abdeckt, die häufig von Entwicklern verwendet werden:

typescript cheatsheet 3d

TypeScript-Schnellreferenz

Einstieg

  • Global installieren:
    npm install -g typescript
    
  • Datei kompilieren:
    tsc dateiname.ts
    
  • Version prüfen:
    tsc --version
    

Grundlegende Typen

let a: number = 10;
let s: string = "TypeScript";
let b: boolean = true;
let arr: number[] = [1, 2, 3];
let tuple: [string, number] = ["TS", 2025];
let anyValue: any = "Flexibel";
let unknownVal: unknown = 5;
let notDefined: undefined = undefined;
let notPresent: null = null;

Union- & Literal-Typen

let id: number | string = 42;
let direction: 'links' | 'rechts' = 'links';

Typ-Aliase & Schnittstellen

type Punkt = { x: number; y: number };
interface Person { name: string; age: number; }
let benutzer: Person = { name: "Alice", age: 25 };

Funktionen

function summe(a: number, b: number): number {
  return a + b;
}
const multiplizieren = (a: number, b: number): number => a * b;
function log(msg: string): void { console.log(msg); }

Klassen

class Tier {
  name: string;
  constructor(name: string) { this.name = name; }
  bewegen(entfernung: number = 0): void { console.log(`${this.name} bewegte sich ${entfernung}`); }
}

Zugriffsmodifikatoren

  • public (Standard), private, protected, readonly
class Punkt {
  constructor(private x: number, private y: number) {}
}

Generics

function identitaet(arg: T): T { return arg; }
let ausgabe = identitaet("meinString");

Enumerationen

enum RessourcenTyp { BUCH, DATEI, FILM }
let r: RessourcenTyp = RessourcenTyp.BUCH;

Typumwandlungen / Casting

let irgendEinWert: unknown = "Hallo";
let strLaenge: number = (irgendEinWert as string).length;

Module

// Exportieren
export function foo() {}
// Importieren
import { foo } from "./modul";

Fortgeschrittene Typen

  • Schnittmenge:
    type A = { a: number }; type B = { b: number };
    type AB = A & B; // { a: number, b: number }
    
  • Bedingt:
    type IstString = T extends string ? true : false;
    
  • Abbildend:
    type NurLesen = { readonly [P in keyof T]: T[P]; }
    
  • Vorlagen-Literal-Typ:
    type EreignisName = `on${Capitalize}`;
    

Nützliche Utility-Typen

Partial, Required, Readonly, Pick, Omit, Record

Einschränkung

  • Verwenden Sie typeof und instanceof zur Typeneinschränkung:
function fuellenLinks(wert: string, fuellung: string | number) {
  if (typeof fuellung === "number") {
    return Array(fuellung + 1).join(" ") + wert;
  }
  return fuellung + wert;
}

Diese Zusammenfassung bietet die Kern-Syntax und Funktionen, die für die meisten TypeScript-Entwicklungsworkflows essenziell sind.