0%
Interfaces et types avancés

Interfaces et types avancés

Structurez vos données avec les interfaces

10-15 min

Interfaces et types avancés

Les interfaces et types personnalisés sont au cœur de TypeScript. Ils permettent de définir la structure de vos données et de créer des contrats clairs dans votre code.

Interfaces de base

Définition d'une interface

interface Utilisateur {
  id: number;
  nom: string;
  email: string;
  age: number;
}

// Utilisation
let utilisateur: Utilisateur = {
  id: 1,
  nom: "Alice",
  email: "alice@example.com",
  age: 30
};

Propriétés optionnelles

interface Produit {
  id: number;
  nom: string;
  prix: number;
  description?: string; // Propriété optionnelle
  enStock?: boolean;
}

let produit1: Produit = {
  id: 1,
  nom: "Ordinateur",
  prix: 999
  // description et enStock sont optionnelles
};

let produit2: Produit = {
  id: 2,
  nom: "Souris",
  prix: 25,
  description: "Souris ergonomique",
  enStock: true
};

Propriétés en lecture seule

interface Configuration {
  readonly apiUrl: string;
  readonly version: string;
  timeout: number;
}

let config: Configuration = {
  apiUrl: "https://api.example.com",
  version: "1.0.0",
  timeout: 5000
};

// config.apiUrl = "nouvelle-url"; // ❌ Erreur : propriété en lecture seule
config.timeout = 10000; // ✅ OK

Commentaires

Les commentaires sont alimentés par GitHub Discussions

Connectez-vous avec GitHub pour participer à la discussion

Lien copié !