Das Problem:
Bei der asynchronen Programmierung kann eine Konvertierung von Vorteil sein Rückrufe in Versprechen umwandeln. Allerdings gibt eine nicht auf Versprechen basierende Funktion wie setTimeout standardmäßig nicht sofort ein Versprechen zurück. In diesem Artikel wird untersucht, wie Sie ein Versprechen erstellen, das im Kontext einer Funktion wie setTimeout verwendet werden kann.
Erste Gedanken:
Das bereitgestellte Beispiel definiert eine setTimeout-Funktion mit ein Rückruf. Um ein Versprechen zu erstellen, muss der setTimeout-Rückruf in die Executor-Funktion des Versprechenskonstruktors eingebettet werden.
Überarbeitete Lösung:
Unter Verwendung von modernem JavaScript und Promises der folgende Code zeigt, wie man aus setTimeout ein Versprechen erstellt:
function later(delay) { return new Promise(resolve => setTimeout(resolve, delay)); }
Diese spätere Funktion nimmt eine Verzögerung entgegen und gibt ein Versprechen zurück wird nach der angegebenen Verzögerung aufgelöst. Anschließend können Sie das zurückgegebene Versprechen in Ihrem asynchronen Code verwenden.
Erweiterte Überlegungen:
Für fortgeschrittenere Szenarien sollten Sie die folgenden Variationen der späteren Funktion in Betracht ziehen:
Fazit:
Das Erstellen von Versprechen aus Rückrufen wie setTimeout ermöglicht eine einfachere Integration von Asynchronität Operationen in Ihre Codebasis. Wenn Sie verstehen, wie Sie diese Technik implementieren, können Sie die Lesbarkeit und Wartbarkeit Ihrer asynchronen JavaScript-Anwendungen verbessern.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen „setTimeout'-Rückruf in ein Versprechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!