Versprechen in Node.js
Node.js ist eine beliebte Laufzeitumgebung, die es Entwicklern ermöglicht, skalierbare und effiziente Anwendungen zu erstellen. Eine der Kernfunktionen von Node.js ist die Fähigkeit, asynchronen Code zu verarbeiten, der für die Erstellung leistungsstarker Anwendungen unerlässlich ist. Die Verwaltung von asynchronem Code kann eine Herausforderung darstellen, insbesondere bei komplexen Vorgängen oder lang andauernden Aufgaben. Hier kommen Versprechen ins Spiel, die eine einfache und effektive Möglichkeit bieten, asynchrone Vorgänge in Node.js abzuwickeln.
In diesem Artikel untersuchen wir das Konzept der Versprechen in Node.js und warum sie für die Erstellung moderner Anwendungen wichtig sind.
Was ist ein Versprechen?
Vereinfacht ausgedrückt ist ein Versprechen ein Objekt, das einen Wert darstellt, der möglicherweise noch nicht verfügbar ist. Versprechen werden verwendet, um asynchrone Vorgänge in JavaScript abzuwickeln, z. B. Netzwerkanfragen zu stellen oder Dateien von der Festplatte zu lesen.
Ein Versprechen hat drei Zustände:
- Ausstehend: Der Anfangsstatus eines Versprechens, der darauf hinweist, dass der Wert noch nicht verfügbar ist.
- Erfüllt: Der Status eines Versprechens, wenn der Vorgang erfolgreich ist und der Wert verfügbar ist.
- Abgelehnt: Der Status eines Versprechens, als der Vorgang fehlgeschlagen ist und ein Fehler aufgetreten ist.
Erstellen eines Versprechens in Node.js
Das Erstellen eines Versprechens in Node.js ist unkompliziert. Wir verwenden den Promise-Konstruktor, um ein neues Promise zu erstellen und eine Funktion zu übergeben, die den asynchronen Vorgang ausführt. Die Funktion benötigt zwei Argumente, „resolve“ und „reject“, die angeben, ob der Vorgang erfolgreich war oder nicht.
Hier ist ein Beispiel, das ein Versprechen erstellt, das nach einer Verzögerung von einer Sekunde aufgelöst wird:
const myPromise = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Operation successful!');
}, 1000);
});
Umgang mit vielversprechenden Ergebnissen
Sobald ein Versprechen erstellt wurde, können wir die Methode then verwenden, um die Ergebnisse zu verarbeiten. Die then-Methode benötigt zwei Funktionen als Argumente, eine für die Behandlung einer erfolgreichen Operation und eine für die Behandlung eines Fehlers.
Hier ist ein Beispiel, das das oben erstellte Versprechen verwendet, um das Ergebnis in der Konsole zu protokollieren:
myPromise.then((result) => {
console.log(result);
}).catch((error) => {
console.error(error);
});
Versprechen verketten
Eine der wirkungsvollsten Eigenschaften von Versprechen ist die Fähigkeit, sie miteinander zu verketten. Dadurch können wir eine Reihe asynchroner Vorgänge nacheinander ausführen, ohne Rückrufe zu verschachteln.
Hier ist ein Beispiel, das zwei Versprechen miteinander verknüpft:
const getUser = (id) => {
return new Promise((resolve, reject) => {
setTimeout(() => {
const user = { id, name: 'John Doe' };
resolve(user);
}, 1000);
});
};
const getPosts = (user) => {
return new Promise((resolve, reject) => {
setTimeout(() => {
const posts = [{ id: 1, title: 'Post 1' }, { id: 2, title: 'Post 2' }];
resolve({ user, posts });
}, 1000);
});
};
getUser(1)
.then(getPosts)
.then((result) => {
console.log(result);
})
.catch((error) => {
console.error(error);
});
#nodejs #javascript #blockchain #promise #fullstackdeveloper

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































