Cours et résumés interactifs. Accessible partout, facile à rechercher et mémoriser.
Des cours structurés, interactifs et faciles à suivre
Maîtrisez les fonctions, les arrow functions et les closures
Bienvenue dans ce chapitre sur les fonctions ! Tu vas apprendre à créer des fonctions réutilisables et puissantes.
Les fonctions sont des blocs de code réutilisables qui effectuent une tâche spécifique. Elles sont essentielles en programmation !
Pourquoi utiliser des fonctions ?
Les fonctions permettent de :
Voici comment créer une fonction simple :
function saluer(nom) {
return "Bonjour " + nom + " !";
}
// Utilisation
const message = saluer("Marie");
console.log(message); // "Bonjour Marie !"Le mot-clé return permet de renvoyer une valeur depuis la fonction. Sans return, la fonction renvoie undefined.
Les fonctions peuvent accepter plusieurs paramètres et retourner différents types de valeurs :
function additionner(a, b) {
return a + b;
}
function multiplier(x, y) {
return x * y;
}
console.log(additionner(5, 3)); // 8
console.log(multiplier(4, 7)); // 28Les arrow functions sont une syntaxe moderne et concise pour déclarer des fonctions en JavaScript.
Syntaxe moderne
Les arrow functions sont apparues avec ES6 (2015) et sont maintenant la norme en JavaScript moderne.
// Fonction classique
function saluer(nom) {
return "Salut " + nom;
}
// Arrow function équivalente
const saluerArrow = (nom) => {
return "Salut " + nom;
}
// Version encore plus courte (return implicite)
const saluerCourt = nom => "Salut " + nom;
console.log(saluerCourt("Alex")); // "Salut Alex"const nombres = [1, 2, 3, 4];
const doubles = nombres.map(n => n * 2);
// [2, 4, 6, 8]
// Avec filter()
const pairs = nombres.filter(n => n % 2 === 0);
// [2, 4]
// Avec reduce()
const somme = nombres.reduce((acc, n) => acc + n, 0);
// 10Attention au contexte !
Les arrow functions ne créent pas leur propre this. Elles héritent du this de leur contexte parent. Cela peut être un avantage ou un inconvénient selon la situation !
Les closures sont l'un des concepts les plus puissants de JavaScript. Une closure permet à une fonction d'accéder aux variables de son scope parent.
Concept avancé
Les closures peuvent sembler complexes au début, mais elles sont incroyablement utiles pour créer des fonctions privées et gérer l'état !
function externe() {
const message = "Je suis dans externe";
function interne() {
// La fonction interne a accès aux variables de externe
console.log(message);
}
return interne;
}
const maFonction = externe();
maFonction(); // "Je suis dans externe"Un exemple pratique avec un compteur :
function creerCompteur() {
let count = 0; // Variable privée !
return {
incrementer: () => ++count,
decrementer: () => --count,
valeur: () => count
};
}
const compteur = creerCompteur();
console.log(compteur.incrementer()); // 1
console.log(compteur.incrementer()); // 2
console.log(compteur.decrementer()); // 1
console.log(compteur.valeur()); // 1
// count n'est pas accessible directement !
// console.log(compteur.count); // undefinedBravo ! Les closures te permettent d'encapsuler des données et de créer des variables vraiment privées en JavaScript.
Dans ce chapitre, tu as appris :
Prochaine étape
Continue vers le chapitre suivant pour découvrir les objets et les classes en JavaScript !
Des outils pour les étudiants modernes
Commence en 2 min
Teste tes connaissances
Centaines de cours
15 min chrono
Étudie avec tes potes
+24 étudiants en ligne
Évolution temps réel
Qualité premium à prix imbattable
Aperçu gratuit
Cours démo uniquement
💳 Paiement sécurisé · 💯 Garantie satisfait ou remboursé · 🔒 Annule à tout moment