Dans es6, promise signifie "promesse". Promise représente le résultat d'une opération asynchrone. Il s'agit d'une nouvelle solution de programmation asynchrone. Elle est représentée comme un objet dans le code et est principalement utilisée pour résoudre le problème de la zone de rappel. est "nouvelle promesse (fonction (résolution, rejet) {..})".
L'environnement d'exploitation de ce tutoriel : système Windows 10, ECMAScript version 6.0, ordinateur Dell G3.
promesse signifie promesse. L'idée principale derrière cela est que la promesse représente le résultat d'une opération asynchrone.
est une nouvelle solution de programmation asynchrone dans es6, qui est représentée comme un objet dans le code.
Promise est une solution fournie par la programmation asynchrone js, qui est principalement utilisée pour résoudre le problème de la région de rappel.
La promesse a trois états, à savoir
État initial en attente (en cours)
Réalisée (réussie) signifie que l'opération est réussie
rejetée (échec) signifie que l'opération a échoué
Remarque : Les trois états de l'objet Promise ne sont pas affectés par le monde extérieur. Seuls les événements stockés dans la promesse qui se termineront dans le futur seront affectés. C'est-à-dire que seul le résultat de l'opération asynchrone peut déterminer l'état actuel, et aucune autre opération ne peut modifier cet état. Une fois l'état Promise modifié, il est irréversible. L'état En attente (en cours) peut être transformé en Accompli. (réussi).
Le statut en attente (en cours) peut être changé en statut rejeté (en échec).
La promesse ne changera de statut que dans ces deux situations. Une fois ces deux changements de statut effectués, le statut sera solidifié et ce résultat sera. toujours être entretenu.
Utilisation de baseSyntaxe :new Promise( function(resolve, reject) {...} /* executor */ )
Lors de la construction d'un objet Promise, vous devez transmettre une fonction d'exécuteur et les principaux processus métier sont exécutés dans la fonction d'exécuteur.
La fonction exécuteur est appelée immédiatement lorsque le constructeur Promise est exécuté. Les fonctions de résolution et de rejet
sont transmises à l'exécuteur en tant que paramètres Lorsque les fonctions de résolution et de rejet
sont appelées, le statut de la promesse est modifié pour être rempli. ou rejeté (échec). Une fois que l'état change, il ne changera plus et ce résultat peut être obtenu à tout moment.
Après avoir appelé la fonction de résolution dans la fonction exécuteur, la fonction de rappel définie par promise.then sera déclenchée ; et après avoir appelé la fonction rejet
, la fonction de rappel définie par promise.catch sera déclenchée ;
Comme le montre la figure ci-dessous :
L'exemple est le suivant : Créez un nouvel objet Promise
Vous devez transmettre une fonction de rappel. La fonction de rappel a 2 paramètres, représentant la résolution (resolve). ) et rejeter (reject) ), et les deux paramètres sont des fonctions
Si aucun des deux paramètres n'est appelé, l'état en attente par défaut
let promise=new Promise(function(resolve,reject){ });//pending状态
appelle la fonction de résolution, qui représente l'état de la promesse, et la fonction de rejet sera appelée depuis ending= =>fulfilled
let promise=new Promise(function(resolve,reject){ resolve(); });//fulfilled状态
, qui représente Le statut de la promesse changera de ending==>rejected
let promise=new Promise(function(resolve,reject){ reject(); });//rejected 状态
[Recommandations associées :
tutoriel vidéo javascript,
front-end webCe 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!