Fiche de référence TypeScript : maîtrisez les concepts fondamentaux et les bonnes pratiques

L'installation, l'exécution, les types, les classes, toutes les bases

Sommaire

Voici mon concis fiche de référence TypeScript couvrant les concepts clés, la syntaxe et les exemples de code fréquemment utilisés par les développeurs :

typescript cheatsheet 3d

Fiche de référence TypeScript

Démarrage

  • Installer globalement :
    npm install -g typescript
    
  • Compiler un fichier :
    tsc filename.ts
    
  • Vérifier la version :
    tsc --version
    

Types de base

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 = "Flexible";
let unknownVal: unknown = 5;
let notDefined: undefined = undefined;
let notPresent: null = null;

Types Union et Littéraux

let id: number | string = 42;
let direction: 'left' | 'right' = 'left';

Alias de type et interfaces

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

Fonctions

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

Classes

class Animal {
  name: string;
  constructor(name: string) { this.name = name; }
  move(distance: number = 0): void { console.log(`${this.name} moved ${distance}`); }
}

Modificateurs d’accès

  • public (par défaut), private, protected, readonly
class Point {
  constructor(private x: number, private y: number) {}
}

Génériques

function identity(arg: T): T { return arg; }
let output = identity("myString");

Enums

enum ResourceType { BOOK, FILE, FILM }
let r: ResourceType = ResourceType.BOOK;

Assertions de type / Casting

let someVal: unknown = "Hello";
let strLength: number = (someVal as string).length;

Modules

// Export
export function foo() {}
// Import
import { foo } from "./module";

Types avancés

  • Intersection :
    type A = { a: number }; type B = { b: number };
    type AB = A & B; // { a: number, b: number }
    
  • Conditionnel :
    type IsString = T extends string ? true : false;
    
  • Cartographié :
    type Readonly = { readonly [P in keyof T]: T[P]; }
    
  • Type de littéral de modèle :
    type EventName = `on${Capitalize}`;
    

Types utilitaires utiles

Partial, Required, Readonly, Pick, Omit, Record

Réduction de type

  • Utilisez typeof et instanceof pour la réduction de type :
function padLeft(value: string, padding: string | number) {
  if (typeof padding === "number") {
    return Array(padding + 1).join(" ") + value;
  }
  return padding + value;
}

Ce résumé fournit la syntaxe et les fonctionnalités essentielles pour la plupart des workflows de développement TypeScript.

Liens utiles