Maison > Article > interface Web > Quels sont les différents états d'une promesse JavaScript et comment sont-ils liés à des termes tels que « réglé », « résolu » et « différé » ?
La terminologie des promesses JavaScript
Comprendre la terminologie entourant les promesses JavaScript peut être difficile. Selon la spécification Promises/A et ES6, les promesses ont trois états distincts :
Réglée, résolue et remplie
Le terme « réglée » fait référence à la réalisation ou au rejet, collectivement, ce qui implique que la promesse n'est plus en attente. Cependant, « résolu » est un concept complexe.
Il peut parfois être utilisé de manière interchangeable avec « accompli », mais une interprétation plus précise est que « résoudre » est l'acte de fixer le sort de la promesse à être remplie ou rejetée. . La « résolution » d'une promesse signifie qu'elle est sortie de l'état en attente.
Récursivité et résolution
La procédure de résolution de promesse est récursive. Résoudre une promesse avec une valeur fondamentale la réalise, tandis que la résoudre avec une autre promesse adopte l'état de cette promesse. Cela peut conduire à des scénarios dans lesquels une promesse est résolue mais son état final est indéterminé. Dans de tels cas, la promesse est dite « résolue » dans le sens où son destin n'est plus ambigu, mais son état réel peut encore être en suspens.
Différé
Différer un résultat implique de fournir une promesse asynchrone pour le résultat au lieu de renvoyer le résultat directement. Ce processus renvoie également un rejet différé au lieu d'être lancé de manière synchrone.
Dans certaines bibliothèques, comme Q, le terme « defer » fait référence à la méthode qui construit un objet Deferred. Il est important de noter que les noms de variables ne reflètent pas toujours avec précision leur signification prévue, et « defer » peut également être une abréviation de « deferredObject ».
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!