blob: ac516b457697bcaf93732a269c831ef26165c3a4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
---
title: Fonction de rappel (callback)
slug: Glossary/Callback_function
tags:
- Callback
- Fonction de rappel
- Glossaire
- Rappel
translation_of: Glossary/Callback_function
original_slug: Glossaire/Fonction_de_rappel
---
Une fonction de rappel (aussi appelée _callback_ en anglais) est une fonction passée dans une autre fonction en tant qu'argument, qui est ensuite invoquée à l'intérieur de la fonction externe pour accomplir une sorte de routine ou d'action.
Voici un rapide exemple :
```js
function salutation(name) {
alert('Bonjour ' + name);
}
function processUserInput(callback) {
var name = prompt('Entrez votre nom.');
callback(name);
}
processUserInput(salutation);
```
L' exemple ci-dessus est un rappel {{glossary("synchronous","synchrone")}} et il est exécuté immédiatement.
Notez cependant que les rappels sont souvent utilisés pour continuer l'exécution de code après l'achèvement d'une opération {{glossary("asynchronous","asynchrone")}} — ceux-ci sont appelés les rappels asynchrones. Dans l'exemple [xhr-async-callback](https://github.com/mdn/learning-area/blob/master/javascript/asynchronous/introducing/xhr-async-callback.html) ([voir aussi en direct](https://mdn.github.io/learning-area/javascript/asynchronous/introducing/xhr-async-callback.html)), on utilise la fonction `displayImage` comme une fonction de rappel pour la fonction `loadAsset` (cette dernière récupère l'image via une requête [XHR](</fr/docs/Glossaire/XHR_(XMLHttpRequest)>)).
Exécuté de cette façon, asynchrone via l'API Web [`XMLHttpRequest`](/fr/docs/Web/API/XMLHttpRequest), le chargement de l'image ne bloque pas le reste du contenu.
## **En apprendre plus**
### **Culture générale**
- {{interwiki("wikipedia","Fonction_de_rappel","Fonction de rappel")}} sur Wikipedia
- [Comprendre les fonctions de rappel JavaScript et les utiliser](https://javascriptissexy.com/understand-javascript-callback-functions-and-use-them/) (en anglais).
|