Maison >interface Web >js tutoriel >Pourquoi « attendre » échoue-t-il en dehors d'une fonction asynchrone en JavaScript ?

Pourquoi « attendre » échoue-t-il en dehors d'une fonction asynchrone en JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-09 02:10:11455parcourir

Why Does

Erreur : "attendre n'est valable que dans la fonction asynchrone"

Le code JavaScript fourni a rencontré une erreur lors de la tentative d'utilisation de "attendre" mot-clé dans une fonction non asynchrone. Cette erreur indique spécifiquement l'utilisation de « attendre » dans la fonction « démarrer ».

Explication :

Le mot-clé « attendre » ne peut être utilisé qu'à l'intérieur du corps d'une fonction asynchrone, désignée par le mot-clé "async". Dans le code fourni, « mafonction » est définie comme une fonction asynchrone, permettant l'utilisation de « attendre » dans son corps. Cependant, la fonction "start" est définie comme une fonction régulière qui n'a pas le mot-clé "async".

Solution :

Pour résoudre ce problème, le " start" doit être convertie en fonction asynchrone. Ceci peut être réalisé en ajoutant le mot-clé "async" avant la définition de la fonction, comme indiqué ci-dessous :

async function start(a, b) {
  ....
  const result = await helper.myfunction('test', 'test');
}

Maintenant, la fonction "start" peut utiliser "attendre" pour attendre la fin de "ma fonction " appeler et procéder à son exécution.

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!

Déclaration:
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