Comment transmettre un argument supplémentaire à une fonction de rappel
Lorsque vous travaillez avec des fonctions de rappel, il peut arriver de transmettre des arguments supplémentaires que ceux attendus par la fonction de rappel. Voici comment y parvenir :
Considérez une fonction callWithMagic qui accepte un rappel et l'invoque avec un seul argument :
const callWithMagic = callback => { const magic = getMagic(); callback(magic); };
Si vous avez une fonction processMagic qui nécessite deux arguments (magic et theAnswer), vous pouvez le transmettre à callWithMagic en créant une fonction de rappel wrapper :
callWithMagic(function(magic) { return processMagic(magic, 42); });
This La fonction wrapper accepte l'argument magique requis et le transmet avec l'argument supplémentaire 42 à processMagic.
Alternativement, si votre environnement prend en charge ECMAScript 6, vous pouvez exploiter les fonctions fléchées :
callWithMagic(magic => processMagic(magic, 42));
Ceci une syntaxe concise attribue efficacement la logique de rappel à une fonction qui appelle directement processMagic avec l'argument supplémentaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!