Comprendre la différence entre Partial et any en TypeScript en quelques minutes

Objectif
- Comprendre la différence entre Partial<T> et any
Rappel sur les types en TypeScript
TypeScript est un langage basé sur JavaScript qui ajoute en plus la notion de types (comme string, number, etc.).
Cela permet de détecter les erreurs dès l’écriture du code, avant même de l’exécuter.
C'est quoi la different entre Partial et any ?
1- Le type utilitaire Partial<T>
Définition :
Partial<T> est un type générique fourni par TypeScript qui rend toutes les propriétés d’un type optionnelles.
Syntaxe :
Partial<Type>
Exemple:
type User = {
name: string;
age: number;
};
const update: Partial<User> = {
age: 33
};
Quand l’utiliser ?
- Quand on veut mettre à jour partiellement un objet
Ce que ça ne fait pas :
- Partial<T> ne casse pas le typage. Vous gardez l’autocomplétion et la vérification des types.
2- Le type any
Définition :
any est un type spécial qui dit à TypeScript :
"Fais-moi confiance, je sais ce que je fais."
Il désactive toute vérification de type sur la variable.
Exemple :
let data: any = 5;
data = "Bonjour"; // OK
data = { foo: true }; // OK aussi
Inconvénients majeurs
- Pas d’autocomplétion
Quand l’utiliser ?
- Lors d’une migration depuis JavaScript
Exercices
Exercice 1 – Crée un type Partial
type Product = {
id: number;
name: string;
price: number;
};
const updateProduct = (product: Partial<Product>) => {
console.log("Mise à jour :", product);
};
Exemple avec any à éviter
function process(data: any) {
// Pas de vérification : dangereux
console.log(data.id); // Peut planter si 'id' n'existe pas
}
Conclusion
- Partial<T> est un outil précis et typé, parfait pour des structures connues et modulables.