Appeler des fonctions avec un contexte

JavaScriptJavaScriptBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons explorer comment appeler des fonctions avec un contexte à l'aide d'une fermeture en JavaScript. Nous allons apprendre comment passer une clé et un ensemble d'arguments à une fonction, puis l'appeler avec le contexte donné. Par des exemples pratiques, nous verrons comment cette technique peut être utilisée pour simplifier le code et le rendre plus lisible.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/ToolsandEnvironmentGroup(["Tools and Environment"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/AdvancedConceptsGroup -.-> javascript/async_prog("Asynchronous Programming") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") javascript/ToolsandEnvironmentGroup -.-> javascript/debugging("Debugging") subgraph Lab Skills javascript/variables -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/data_types -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/arith_ops -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/comp_ops -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/array_methods -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/async_prog -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/higher_funcs -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/spread_rest -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} javascript/debugging -.-> lab-28185{{"Appeler des fonctions avec un contexte"}} end

Comment appeler des fonctions avec un contexte en JavaScript

Pour exécuter du code dans Node.js, ouvrez le Terminal/SSH et tapez node. Si vous voulez appeler une fonction avec un contexte spécifique et un ensemble d'arguments en JavaScript, vous pouvez utiliser une fermeture. Voici comment faire :

  1. Définissez une fonction appelée call qui prend une clé et un ensemble d'arguments en tant que paramètres et renvoie une nouvelle fonction qui prend un paramètre contexte.
const call =
  (key, ...args) =>
  (context) =>
    context[key](...args);
  1. Utilisez la fonction call pour appeler la fonction map sur un tableau de nombres. Dans cet exemple, la fonction map double chaque nombre du tableau.
Promise.resolve([1, 2, 3])
  .then(call("map", (x) => 2 * x))
  .then(console.log); // [ 2, 4, 6 ]
  1. Vous pouvez également lier la fonction call à une clé spécifique, telle que map, et l'utiliser pour appeler la fonction map sur un tableau de nombres.
const map = call.bind(null, "map");
Promise.resolve([1, 2, 3])
  .then(map((x) => 2 * x))
  .then(console.log); // [ 2, 4, 6 ]

En utilisant la fonction call, vous pouvez facilement appeler n'importe quelle fonction avec un contexte spécifique et un ensemble d'arguments.

Sommaire

Félicitations ! Vous avez terminé le laboratoire Appeler des fonctions avec un contexte. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.