1. Mehrere .catchvar p = neues Versprechen((lösen, ablehnen) => { ablehnen(Fehler('Die Fehler!')) }) p.catch(Fehler => console.log(Fehlermeldung)) p.catch(Fehler => console.log(Fehlermeldung)) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse: Wir erstellen ein Promise mit der Konstruktormethode und lösen über den Reject-Callback sofort einen Fehler aus. Dann funktioniert .catch ähnlich wie .addEventListener(event, callback) von DOM oder .on(event, callback) von Event Emitter, wo mehrere Rückrufe hinzugefügt werden können. Jeder wird mit den gleichen Argumenten aufgerufen. 2. Mehrere .catchvar p = neues Versprechen((lösen, ablehnen) => { return Promise.reject(Error('Die Fehler!')) }) p.catch(Fehler => console.log(Fehlermeldung)) p.catch(Fehler => console.log(Fehlermeldung)) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse: Wenn Sie den Promise-Konstruktor verwenden, müssen Sie entweder den Rückruf „resolve()“ oder „reject()“ aufrufen. Der Promise-Konstruktor verwendet Ihren Rückgabewert nicht und empfängt daher kein weiteres Promise, das von Promise.reject() erstellt wurde. Wenn nach Promise.reject() kein .catch vorhanden ist, ist die Antwort UnhandledPromiseRejectionWarning. 3. Verkettung von .then und .catchvar p = neues Versprechen((lösen, ablehnen) => { ablehnen(Fehler('Die Fehler!')) }) .catch(Fehler => console.log(Fehler)) .then(Fehler => console.log(Fehler)) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse Beim Verketten von .then und .catch ist es hilfreich, sie als eine Reihe von Schritten zu betrachten. Jedes .then erhält den vom vorherigen .then zurückgegebenen Wert als Argument. Wenn bei Ihrem „Schritt“ jedoch ein Fehler auftritt, werden alle nachfolgenden „Schritte“ mit der Ausnahme „then“ übersprungen, bis ein „Catch“ auftritt. Wenn Sie einen Fehler überschreiben möchten, müssen Sie lediglich einen fehlerfreien Wert zurückgeben. Der Zugriff ist über jedes nachfolgende .then möglich. Tipp: console.log() gibt immer „undefined“ zurück. 4. Link.fangenvar p = neues Versprechen((lösen, ablehnen) => { ablehnen(Fehler('Die Fehler!')) }) .catch(Fehler => console.log(Fehlermeldung)) .catch(Fehler => console.log(Fehlermeldung)) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse Beim Verketten von .catch verarbeitet jeder Schritt nur die Fehler, die im vorherigen .then- oder .catch-„Schritt“ aufgetreten sind. In diesem Beispiel gibt das erste .catch console.log zurück. Auf dieses kann nur zugegriffen werden, indem nach den beiden .catch ein .then() hinzugefügt wird. 5. Mehrere .catchneues Versprechen((lösen, ablehnen) => { lösen('Erfolg!') }) .then(() => { Fehler auslösen('Oh nein!') }) .catch(Fehler => { return "eigentlich hat das geklappt" }) .catch(Fehler => console.log(Fehlermeldung)) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse Tipp: .catch kann Fehler einfach ignorieren (oder überschreiben), indem es einen regulären Wert zurückgibt. Dieser Trick funktioniert nur, wenn das nachfolgende .then den Wert erhält. 6..dann verarbeitenPromise.resolve('Erfolg!') .dann(data => { returniere data.toUpperCase() }) .dann(data => { console.log(Daten) }) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse Tipp: .then übergibt Daten sequenziell, vom Rückgabewert zum nächsten .then(value => /* handle value */). Um den Wert an den nächsten zu übergeben, ist „return“ der Schlüssel. 7..dann verarbeitenPromise.resolve('Erfolg!') .dann(data => { returniere data.toUpperCase() }) .dann(data => { console.log(Daten) Rückgabedaten }) .then(Konsole.log) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse: Es werden zwei console.log-Aufrufe aufgerufen. 8..dann verarbeitenPromise.resolve('Erfolg!') .dann(data => { Daten.toUpperCase() }) .dann(data => { console.log(Daten) }) Was wird die Ausgabe des obigen Codes sein? Bitte wählen Sie die richtige Antwort aus:
Analyse: Tipp: .then übergibt Daten sequenziell, vom Rückgabewert zum nächsten .then(value => /* handle value */). Um den Wert an den nächsten zu übergeben, ist „return“ der Schlüssel. 9. Fluss zwischen .then und .catchPromise.resolve('Erfolg!') .then(() => { Fehler auslösen('Oh nein!') }) .catch(Fehler => { return "eigentlich hat das funktioniert" }) .dann(data => { throw Error('Das schlägt fehl!') }) .catch(Fehler => console.log(Fehlermeldung)) Oben sind die Details zu 9 JS Promise-Interviewfragen aufgeführt. Weitere Informationen zu JS Promise-Interviewfragen finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Docker- und Portainer-Konfigurationsmethoden unter Linux
>>: Zwei Lösungen für das Problem, dass MySQL in bedingten Anweisungen nur eine Information liest
Im vorherigen Artikel haben wir nach der Konfigur...
Inhaltsverzeichnis Lösung 1 Lösung 2 Beim Erstell...
Dieser Artikel veranschaulicht anhand von Beispie...
In diesem Artikel wird der spezifische JavaScript...
Ergebnis: Implementierungscode html <div id=&q...
Dieser Artikel beschreibt anhand von Beispielen d...
Moderne Browser erlauben nicht mehr, JavaScript i...
Inhaltsverzeichnis Funktionseinführung Rendern 1....
Unten sehen Sie den Code, den Shiji Tiancheng ver...
Inhaltsverzeichnis 1. Grundlagen 2. Problembeschr...
Im vorherigen Blog haben wir über die Verwendung ...
Designspezifikationen für WeChat Mini-Programmkom...
Ich habe mich kürzlich mit Algorithmen beschäftig...
Inhaltsverzeichnis 502 Bad Gateway Fehlerbildung ...
Inhaltsverzeichnis 1. Dateien importieren 2. HTML...