Maison > Article > interface Web > Comment appeler une fonction avec des paramètres de préfixe partiels en JavaScript ?
Les fonctions JavaScript peuvent être appelées avec ou sans paramètres. Lorsqu'elle est appelée avec des arguments, la fonction sera exécutée en utilisant les arguments transmis comme valeurs. Lorsqu'elle est appelée sans arguments, la fonction sera exécutée sans passer d'arguments.
Dans certains cas, une fonction doit être appelée avec certains paramètres (mais pas tous). Cela peut être fait en utilisant la méthode Function.prototype.apply ou en utilisant l'opérateur spread ( ... ).
Grammaire
apply(thisArg) apply(thisArg, argsArray)
thisArg - la valeur this fournie pour la fonction appelante. Si la fonction n'est pas en mode strict, null et undefined seront remplacés par global et la valeur d'origine sera convertie en objet.
argsArray Facultatif - x Objet de type tableau spécifiant les arguments avec lesquels la fonction doit être appelée, ou null ou non défini si les arguments ne doivent pas être fournis à la fonction.
<!doctype html> <html> <head> <title>Examples</title> </head> <body> <div id="result"></div> <script> function add(a, b) { return a + b; } document.getElementById("result").innerHTML = add.apply(null, [1, 2]) </script> </body> </html>Cette valeur est transmise à la méthode apply comme premier paramètre et le tableau de paramètres est transmis comme deuxième paramètre. La fonction est appelée en utilisant la valeur this et les arguments transmis comme valeurs.
La méthode Function.prototype.apply est un moyen puissant d'appeler une fonction avec certains arguments (mais pas tous les arguments). En utilisant la méthode apply, vous évitez de coder en dur les paramètres à transmettre à la fonction.
Utiliser l'opérateur de propagation
Par exemple, considérons le code suivant -
<!doctype html> <html> <head> <title>Examples</title> </head> <body> <div id="result"></div> <script> function add(a, b) { return a + b; } document.getElementById("result").innerHTML = add(...[1, 2]) </script> </body> </html>Le tableau de paramètres est développé en paramètres individuels et la fonction est appelée avec ces paramètres.
Utilisez la méthode bind()
Par exemple, considérons le code suivant -
<!doctype html> <html> <head> <title>Examples</title> </head> <body> <div id="result"></div> <script> function add(a, b) { return a + b; } const add1 = add.bind(null, 1); document.getElementById("result").innerHTML = add1(2) </script> </body> </html>Le premier paramètre de la méthode
bind est la valeur this, et les paramètres restants sont utilisés comme paramètres de la fonction lors de l'appel de la fonction. Dans cet exemple, la valeur this est passée comme nulle et la valeur 1 est passée comme premier argument à la fonction add.
La méthodebind renvoie une nouvelle fonction appelée avec les paramètres donnés. Dans cet exemple, la nouvelle fonction est appelée avec la valeur 2 et la fonction add est appelée avec les valeurs 1 et 2.
Les fonctions JavaScript peuvent être appelées avec ou sans paramètres. Dans certains cas, une fonction doit être appelée avec certains arguments (mais pas tous). Cela peut être fait en utilisant la méthode Function.prototype.apply ou en utilisant l'opérateur spread ( ... ).
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!