Endlich ... ein Beitrag über endlich in Versprechungen
Wann wird der finally
Block in JavaScript -Versprechen ausgeführt? Mir wurde diese Frage kürzlich in einem Seminar gestellt und wollte einen kleinen Artikel schreiben, um einige Verwirrung zu erleichtern.
Die Antwort ist, Snape zu zitieren:
……stets.
Die Grundstruktur ist wie folgt:
versuchen { // Ich werde versuchen, einen Code für Sie auszuführen} catch (Fehler) { // Ich werde mit allen im Prozess erscheinen} endlich {{umgehen { // Ich werde trotzdem ausführen}
Zum Beispiel ist dies ein Beispiel für Chuck Norris Witzgenerator, das aus der Chuck Norris -Datenbank -API stammt. (Übrigens habe ich diese API von Todd Mottos Liste der fantastischen Open -APIs gefunden, die sich hervorragend für Präsentationen und Nebenprojekte eignet.)
asynchrische Funktion getData () { versuchen { lass chuckjokes = warte fetch (`https: // api.chucknorris.io/jokes/random`) .then (res => res.json ()); console.log ('Ich habe einige Daten für dich!'); document.getElementById ("zitat"). Innerhtml = chuckjokes.value; } catch (error) { console.warn (`Es gibt hier einen Fehler: $ {error}`); } Endlich { console.log ('Alles, endlich ausgeführt!'); } }
Konsolenausgabe: (Konsolenausgabe, die den Witz erfolgreich erhalten hat, sollte hier angezeigt werden)
Lassen Sie uns nun einen Tippfehler in die URL der API einführen und versehentlich ein paar <var>r</var>
hinzufügen. Dies wird dazu führen, dass unsere try
fehlschlägt, was bedeutet, dass catch
jetzt einen Fehler wirft.
asynchrische Funktion getData () { versuchen { // Lass es uns ein wenig durcheinander bringen, lassen .then (res => res.json ()); console.log ('Ich habe einige Daten für dich!'); document.getElementById ("zitat"). Innerhtml = chuckjokes.value; } catch (error) { console.warn (`Es gibt hier einen Fehler: $ {error}`); } Endlich { console.log ('Alles, endlich ausgeführt!'); } }
Konsolenausgabe: (Fehlermeldung und finally
Blockausgabe sollte hier angezeigt werden)
Ein sehr wichtiger Aspekt ist, dass das, was im Beispiel nicht erklärt wird, nicht erklärt wird, dass der Code in try
oder catch
-Block, auch wenn return
oder break
einsetzt, der finally
Block ausgeführt wird .
Wann nutzen Sie finally
?
Ich fand es in zwei verschiedenen Situationen besonders nützlich, obwohl ich glaube, dass es andere Situationen gibt:
- Wenn ich den Code im
try
wiederholen muss, Blöckecatch
. Hier ist ein Beispiel aus dem Vue -Rezept, das ich geschrieben habe. Ich schloss den Ladezustand infinally
Block. Dies umfasst, wie das obige Beispiel, ich muss die Benutzeroberfläche in jedem Fall ändern. - Wenn einige Reinigungsarbeiten erforderlich sind. Oracle erwähnt dies in seiner Dokumentation. Es ist Java, aber die Prämisse ist die gleiche.
finally
ist nicht so nützlich wie try
, zu catch
, aber es ist in einigen Fällen erwähnenswert. Hoffe das klärt deine Frage!
Das obige ist der detaillierte Inhalt vonEndlich ... ein Beitrag über endlich in Versprechungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Es ist aus! Herzlichen Glückwunsch an das Vue -Team, dass es eine massive Anstrengung war und lange kommt. Alle neuen Dokumente auch.

Mit dem jüngsten Aufstieg von Bitcoins Preis über 20.000 USD und kürzlich von 30.000, dachte ich, es lohnt

Ich ließ jemanden mit dieser sehr legitimen Frage einschreiben. Lea hat gerade darüber gebloggt, wie Sie gültige CSS -Eigenschaften selbst aus dem Browser erhalten können. Das ist so.

Neulich habe ich dieses besonders schöne Stück von der Website von Corey Ginnivan entdeckt, auf der eine Sammlung von Karten aufeinander stapelt.

Ich sage "Website" passt besser als "Mobile App", aber ich mag dieses Rahmen von Max Lynch:

Wenn wir dem Benutzer direkt im WordPress -Editor Dokumentation anzeigen müssen, wie können Sie dies am besten tun?

Es gibt eine Reihe dieser Desktop -Apps, in denen das Ziel Ihre Website gleichzeitig in verschiedenen Dimensionen angezeigt wird. So können Sie zum Beispiel schreiben

Fragen zu lila Schrägstrichen in Flex -Layouts Bei der Verwendung von Flex -Layouts können Sie auf einige verwirrende Phänomene stoßen, wie beispielsweise in den Entwicklerwerkzeugen (D ...
