Je ne peux pas comprendre comment async et attendre fonctionne. Considérez le code ci-dessous:
password username
3 Réponses :
Vous pouvez penser à p > attendre code> comme "Désavouer" A
prometteur code>
. Pour le moment, votre code n'utilise pas un prometteur code> et donc
attendre code> ne fonctionnera pas. Au lieu de cela, vous pouvez envelopper votre
Settimeout code> dans une promesse et
résoudre code> votre promesse une fois qu'il est complet. Ensuite, en utilisant
attendre code>, vous pouvez obtenir la valeur résolue à partir du code> code> (une fois qu'elle a été résolue (donc 100m / s)) et de le connecter à la console.
async code> Les fonctions renvoient également toujours une promesse code> code>. Ainsi, vous pouvez utiliser la méthode
.Chen code> sur l'appel de votre fonction pour déclencher un "rappel" une fois que votre fonction
getansername code> est terminée: p>
const getUsername = async _ => await new Promise(resolve => setTimeout(_ => resolve("username"), 100));
const getUsernameAndPassword = async _ => {
const username = await getUsername();
console.log(username);
console.log("password");
}
getUsernameAndPassword();
Tout d'abord, vous ne pouvez pas simplement attendre la sécurité car il ne renvoie pas la promesse, vous pouvez essayer de transformer le contenu de cette fonction en un si vous souhaitez attendre que c'est l'exécution
getUsername().then(()=>console.log("password"));
La déclaration de fonction ASYNC définit une fonction asynchrone, qui renvoie un objet asynchronisé.
Une fonction asynchrone est une fonction qui fonctionne de manière asynchrone via la boucle d'événement, P>
en utilisant une promesse implicite de renvoyer son résultat. Mais la syntaxe et la structure de votre code p>
à l'aide des fonctions ASYNC sont beaucoup plus comme à l'aide de fonctions synchrones standard. P> Référence2 Strong>:
https://medium.com/siliconwat/how-javascript-Async- Await-Works-3CAB4B7D21DA P> P>
"Exécutez ce programme de manière synchrone" i> - alors n'utilisez pas
settimeout code> o.o
async code> et
attendre code> est le sucre syntaxique pour effectuer le travail avec
prometteur code> s Votre script n'utilise pas de promesses, il n'y a donc pas de moyen
async code> /
attendre code> changerait quoi que ce soit pour vous.