Fonctions imbriquées en JavaScript
Les fonctions sont un bloc de code utile qui peut être appelé n’importe où dans un programme. Une fonction imbriquée est une fonction dans une fonction. Une telle fonctionnalité est prise en charge dans de nombreux langages de programmation, JavaScript inclus.
Nous allons introduire les fonctions imbriquées en JavaScript dans ce tutoriel.
La fonction extérieure est appelée fonction extérieure. La fonction imbriquée à l’intérieur est appelée fonction interne. Chaque fonction peut accepter des arguments différents.
Ils peuvent être mis en œuvre de la manière suivante.
function a(x) { // Outer function
function b(y) { // inner function
return x - y;
}
return b;
}
console.log(a(5)(4))
Production:
1
Dans l’exemple ci-dessus, a()
est la fonction externe et b()
est la fonction interne. Le résultat final renvoyé utilise les arguments des deux fonctions.
Les fonctions sont des objets de classe qui peuvent être définis dans la fonction externe et créés comme une variable à n’importe quelle partie de la fonction. Cette méthode est appelée curry.
Voir le code ci-dessous.
function outer(x) {
var w = function inner(y) {
return x * y;
} return w;
};
var outvar = outer(2);
console.log(outvar(4));
Production:
8
Les fonctions imbriquées ont un autre avantage. Ils peuvent être utilisés pour effectuer des calculs à l’intérieur d’une autre fonction, même s’ils sont définis à l’extérieur.
Par exemple,
function calculate(a, b, fn) {
var c = a + b + fn(a, b);
return c;
}
function sum(a, b) {
return a + b;
}
function product(a, b) {
return a * b;
}
console.log(calculate(10, 20, sum));
console.log(calculate(10, 20, product));
Production:
60
230