"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Pourquoi Async / Await retourne-t-il toujours une promesse?

Pourquoi Async / Await retourne-t-il toujours une promesse?

Publié le 2025-03-23
Parcourir:754

Why Does async/await Always Return a Promise?

Pourquoi async / Await renvoie toujours promesse

Lorsque vous travaillez avec Async / Await, il est crucial de comprendre que chaque fonction async renvoie un objet Promise. Le mot-clé Await fonctionne sur les promesses, tenant votre fonction jusqu'à ce que la promesse se résout ou rejette.

Pourquoi ne fonctionne pas console.log ()? Au lieu de cela, ils renvoient une promesse qui, lorsqu'elle est résolue, contient le résultat. Ainsi, Console.logging Le résultat d'une fonction asynchronisée directement imprimera la promesse, et non sa valeur.

en utilisant alors () pour débrapper la promesse

pour accéder au résultat d'une fonction asynchrone, vous devez utiliser Await ou la méthode .Then (). La méthode .Then () accepte un rappel qui prend la valeur résolue comme argument. Dans l'exemple de code, la méthode .then () est utilisée pour imprimer l'objet JSON.

Pourquoi ne pas console.log (getjson ())?

dans le extrait de code que vous avez fourni, console.log (getjson ()) renverra une promesse. En effet, attendre ne déballe pas la promesse pour vous. Cela fait que votre fonction attend que la promesse se résout. Vous devez toujours déballer manuellement la promesse en utilisant AWAIT ou .Then ().

Conclusion

pour utiliser efficacement async / attendre, rappelez-vous que les fonctions asynchrones renvoient toujours les promesses. Par conséquent, pour accéder au résultat d'une fonction asynchronisée, vous devez utiliser attendre ou appeler la méthode .then () sur la promesse renvoyée.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3