Maison >interface Web >js tutoriel >Est-ce que « retour en attente » nuit aux performances : réalité ou fiction ESLint ?
Implications sur les performances de return wait
La règle ESLint, no-return-await, vise à décourager l'utilisation des expressions return wait. Cependant, cela suggère que l'attente de retour introduit une surcharge de performances. Cela a suscité une certaine confusion, étant donné la présence d'exemples dans la documentation officielle qui semblent contredire cette notion.
Comprendre return wait
return wait est une manière concise de revenir la valeur résolue d’une promesse. Cependant, il est important de clarifier ce qu'il fait réellement et s'il pose ou non des problèmes de performances.
Impact sur les performances
Techniquement, il n'y a pas de pénalité de performance significative associée à retour en attente. Même si cela implique une opération supplémentaire, la différence est négligeable. C'est comparable au renvoi de la somme d'un nombre et de zéro au lieu de simplement renvoyer le nombre lui-même.
Préoccupations stylistiques
D'un point de vue stylistique, l'attente de retour est généralement considérée comme inutile et potentiellement trompeur. Cela implique que la fonction attend la résolution d'une promesse et renvoie son résultat, alors qu'en fait, la résolution de la promesse est déjà implicite dans le mot-clé wait lui-même.
Exceptions
Cependant, il existe une exception où l'attente de retour peut faire une différence pratique. Dans un bloc try-catch, l'utilisation de return wait garantit que toutes les erreurs générées lors de l'exécution de la promesse attendue sont gérées par le bloc catch. Sans cela, les erreurs seraient ignorées et ne seraient pas traitées correctement.
En conclusion, même si return wait ne pose pas de problèmes de performances substantiels, il est généralement considéré comme un style médiocre et peut conduire à une mauvaise interprétation potentielle. Il est préférable d'éviter de l'utiliser sauf si cela est nécessaire pour la gestion des erreurs dans les blocs try-catch.
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!