Maison > interface Web > js tutoriel > Quand le rappel du constructeur d'une promesse s'exécute-t-il ?

Quand le rappel du constructeur d'une promesse s'exécute-t-il ?

Susan Sarandon
Libérer: 2024-11-30 07:45:14
original
589 Les gens l'ont consulté

When Does a Promise's Constructor Callback Execute?

Le moment de l'exécution du rappel du constructeur Promise

Lors de la création d'un objet Promise, une fonction de rappel (exécuteur) est transmise au constructeur. Cette fonction de rappel est responsable de l'initialisation et de l'exécution ou du rejet de la promesse. Cependant, il peut ne pas être immédiatement clair quand ce rappel est exécuté.

Dans l'extrait de code fourni, la question se pose : quand la fonction doSomeWork() est-elle appelée en relation avec la création de la promesse ?

Réponse :

Selon la spécification Promise et la documentation MDN, le rappel de l'exécuteur est appelé de manière synchrone immédiatement après la construction de la promesse. Cela signifie que doSomeWork() est exécuté dès que la nouvelle ligne Promise est atteinte.

Informations supplémentaires :

Cette exécution synchrone garantit que le rappel de l'exécuteur est toujours appelé avant d'autres opérations qui peuvent en dépendre. Par exemple, si vous enchaîniez plusieurs promesses ou utilisiez all ou race pour combiner des promesses, les rappels de ces promesses seraient assurés d'être appelés dans le bon ordre.

De plus, l'appel synchrone du rappel permet effets secondaires immédiats de l'exécution de la promesse, le cas échéant.

Remarque :

C'est important comprendre que le comportement asynchrone d'une promesse ne prend effet qu'après l'appel du rappel de l'exécuteur et la création de la promesse. Par conséquent, le code dans le rappel de l'exécuteur s'exécutera de manière synchrone, tandis que toutes les opérations asynchrones ultérieures auront lieu de manière asynchrone.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal