Maison  >  Article  >  interface Web  >  Comment appeler une fonction avec des paramètres de préfixe partiels en JavaScript ?

Comment appeler une fonction avec des paramètres de préfixe partiels en JavaScript ?

WBOY
WBOYavant
2023-09-06 21:01:02827parcourir

如何在 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 ( ... ).

Utilisez la méthode Function.prototype.apply

La méthode Function.prototype.apply peut être utilisée pour appeler une fonction avec certains paramètres, mais pas tous les paramètres. Le premier argument de la méthode apply est la valeur this, suivie du tableau d'arguments à transmettre à la fonction.

Grammaire

apply(thisArg)
apply(thisArg, argsArray)

Paramètres

  • 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.

Exemple

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.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

L'opérateur spread ( ... ) peut être utilisé pour appeler une fonction avec certains arguments (mais pas tous les arguments).

L'opérateur de propagation étend un tableau de paramètres en paramètres individuels.

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()

La méthode Function.prototype.bind() peut être utilisée pour créer une nouvelle fonction qui appelle la fonction d'origine et ajoute certains paramètres.

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éthode

bind 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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer