Welche Methoden der Arbeit mit asynchronem Code kennst du?
sobes.tech KI
Antwort von AI
Callbacks, Promises, async/await.
Callbacks: Funktionen, die als Argumente an andere Funktionen übergeben werden und nach Abschluss einer asynchronen Operation aufgerufen werden.
Promises: Objekte, die eine bequemere Möglichkeit bieten, mit Asynchronität umzugehen im Vergleich zu Callbacks. Sie haben die Zustände pending, fulfilled und rejected.
// Beispiel für Promise
function asyncOperation() {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Operation erfolgreich abgeschlossen!');
}, 1000);
});
}
asyncOperation()
.then(result => console.log(result))
.catch(error => console.error(error));
async/await: Syntaktischer Zucker über Promises, der asynchronen Code mehr wie synchronen aussehen lässt und die Lesbarkeit verbessert.
// Beispiel für async/await
async function performAsyncOperation() {
try {
const result = await asyncOperation();
console.log(result);
} catch (error) {
console.error(error);
}
}
performAsyncOperation();
Vergleich der Methoden:
| Methode | Lesbarkeit / Wartbarkeit | Fehlerbehandlung | Steuerung des Flusses |
|---|---|---|---|
| Callbacks | Weniger lesbar (Callback-Hell) | Schwierig | Schwierig |
| Promises | Verbesserte | Bequem (.catch) | Bequem (.then, .catch) |
| async/await | Beste | Bequem (try...catch) | Bequem (await) |
Die bevorzugte Methode in modernen Node.js-Anwendungen ist die Verwendung von async/await aufgrund ihrer Lesbarkeit und Bequemlichkeit. Promises bleiben ein wichtiges Werkzeug, insbesondere auf niedriger Ebene. Callbacks werden in veraltetem Code oder für Low-Level-Operationen im Node.js-Kern verwendet.