La copie de code est la suivante:
var add = fonction (a) {
Fonction de retour (b) {
fonction de retour (c) {
retourner a + b + c;
};
};
};
Ajouter (1) (2) (3); // 6
C'est exact! S'il y a 4 appels comme Add (1) (2) (3) (4), cela ne s'appliquera certainement pas.
Ceci est similaire à l'exécution d'une fonction pour renvoyer la valeur propre de la fonction:
La copie de code est la suivante:
fonction add (x) {
var sum = x;
var tmp = fonction (y) {
sum = sum + y;
retour tmp;
};
tmp.toString = function () {
somme de retour;
};
retour tmp;
}
console.log (add (1) (2) (3)); // 6
console.log (add (1) (2) (3) (4)); // 10
Cependant, une fois le calcul terminé, la fonction TMP est renvoyée, de sorte que le résultat du calcul ne peut pas être obtenu. Le résultat dont nous avons besoin est un numéro calculé. Alors que devons-nous faire? Tout d'abord, nous devons savoir qu'en JavaScript, l'impression et l'ajout de calculs appellent respectivement les fonctions TOSTRING ou Valeur, nous réécrivons donc les méthodes TOSTRING et Valeur de TMP pour renvoyer la valeur de la somme;
Ce qui précède est tout sur cet article, j'espère que vous l'aimez.