Le problème :
Dans la programmation asynchrone, il peut être avantageux de convertir rappels en promesses. Cependant, une fonction non basée sur une promesse telle que setTimeout ne renvoie pas immédiatement une promesse par défaut. Cet article explore comment créer une promesse qui peut être utilisée dans le contexte d'une fonction comme setTimeout.
Réflexions initiales :
L'exemple fourni définit une fonction setTimeout avec un rappel. Pour créer une promesse, il est nécessaire d'envelopper le rappel setTimeout dans la fonction d'exécution du constructeur de promesse.
Solution révisée :
À l'aide de JavaScript et de promesses modernes, le code suivant montre comment créer une promesse à partir de setTimeout :
function later(delay) { return new Promise(resolve => setTimeout(resolve, delay)); }
Cette fonction ultérieure prend un délai et renvoie une promesse qui se résout après le délai spécifié. Vous pouvez ensuite utiliser la promesse renvoyée dans votre code asynchrone.
Considérations avancées :
Pour des scénarios plus avancés, envisagez les variantes suivantes de la fonction ultérieure :
Conclusion :
La création de promesses à partir de rappels comme setTimeout permet une intégration plus facile des opérations dans votre base de code. En comprenant comment mettre en œuvre cette technique, vous pouvez améliorer la lisibilité et la maintenabilité de vos applications JavaScript asynchrones.
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!