OUJOOD.COM
📌 Pourquoi typer les fonctions ?
TypeScript permet de déclarer les types attendus par une fonction. Cela rend ton code :
- plus lisible
- plus fiable
- moins sujet aux erreurs
📘 Déclaration typée d’une fonction
function saluer(nom: string): string {
return "Bonjour " + nom;
}
function saluer: déclaration de la fonction nomméesaluer(nom: string): le paramètrenomdoit être une chaîne de caractères: stringaprès les parenthèses : signifie que la fonction retourne une chaînereturn "Bonjour " + nom: construit et retourne le message
🧮 Exemple avec plusieurs paramètres typés
function additionner(a: number, b: number): number {
return a + b;
}
- Deux paramètres
aetbde typenumber - La fonction retourne un
number(la somme)
📝 Typage des fonctions anonymes (avec flèche)
TypeScript permet aussi de typer les fonctions fléchées (arrow functions), souvent utilisées dans les callbacks.
const multiplier = (x: number, y: number): number => {
return x * y;
};
- On utilise ici une syntaxe fléchée
() => { } - Les paramètres et la valeur de retour sont typés comme précédemment
🔒 Fonction avec paramètre optionnel
function afficherMessage(message: string, auteur?: string): string {
if (auteur) {
return auteur + " dit : " + message;
}
return message;
}
auteur?: string: le paramètreauteurest optionnel (peut être omis)- La fonction s’adapte en fonction de la présence du deuxième paramètre
🔁 Fonction sans retour (type void)
function afficherBienvenue(): void {
console.log("Bienvenue !");
}
: voidindique que la fonction ne retourne rien- Elle réalise une action (ici un affichage), mais ne donne pas de résultat exploitable
📌 Résumé
- TypeScript permet de typer chaque paramètre et la valeur retournée
- Les fonctions peuvent avoir des paramètres optionnels
- Le typage des fonctions fléchées est identique
voids’utilise pour une fonction sans retour
🧭 Prochaine étape
Dans le prochain chapitre, nous allons explorer les types unions et les types littéraux qui permettent d’enrichir et de sécuriser encore plus ton code.
Souhaites-tu passer au Chapitre 8 : Types unions et littéraux en TypeScript ?