Dans le domaine de la programmation, la recherche de l'introduction de retards artificiels a souvent reposait sur le concept de « sommeil ». Pour JavaScript, la quête d’émulation de cette fonctionnalité a conduit à une multitude d’approches. L'une de ces solutions, la fonction pausecomp, utilise une méthode rudimentaire pour imiter le sommeil. Cependant, à mesure que la technologie progresse, les solutions disponibles évoluent également.
Depuis les débuts de l'existence de JavaScript, des progrès remarquables ont été réalisés dans l'évolution de l'ingénierie du sommeil. Depuis 2017, l'approche suivante représente le summum de la manipulation du sommeil en JavaScript :
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }
Cet extrait introduit un mécanisme puissant qui permet la création de promesses, servant d'espaces réservés pour l'achèvement des opérations asynchrones. En tirant parti de la fonctionnalité intégrée de l'objet Promise, JavaScript peut désormais simuler le sommeil de manière transparente et efficace.
En pratique, implémenter le sommeil est aussi simple que d'appeler la fonction sleep avec la durée de délai souhaitée en millisecondes :
await sleep(2000);
Cette ligne de code concise demande au moteur JavaScript de suspendre l'exécution pour la période spécifiée. L'exécution reprend une fois la promesse résolue, permettant un véritable sommeil dans le flux d'une fonction.
En résumé, le paysage JavaScript a subi une transformation significative en matière de manipulation du sommeil. L'approche susmentionnée, utilisant des promesses et des principes de programmation asynchrone, s'impose comme la championne incontestée, offrant aux développeurs un moyen élégant et efficace d'introduire des délais contrôlés dans leur code.
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