Arrow Function
JavaScript 🟢 JuniorDéfinition
Syntaxe compacte pour les fonctions anonymes avec =>, qui ne possède ni son propre this, ni arguments, ni super. Le this est hérité du scope lexical englobant.
Analogie
Un assistant qui n'a pas de bureau propre (pas de this) : il utilise toujours le bureau de son chef (scope parent).
Exemple de code
const add = (a, b) => a + b;
const greet = name => `Hello ${name}`;
const getObj = () => ({ key: 'value' });
class Timer {
start() {
setInterval(() => console.log(this), 1000);
// this = instance Timer (lexical)
}
}
Cas d'usage
Callbacks, méthodes de tableaux (map, filter), quand on veut capturer le this du parent.
Anti-pattern
Utiliser une arrow function comme méthode d'objet literal : this ne pointe pas vers l'objet.