Sobes.tech
Junior

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.