Dino Geek, probeer je te helpen

Hoe Promises gebruiken in Node.js?


Promises in Node.js zijn een design pattern dat helpt bij het behandelen van asynchrone operaties. Ze zijn in feite een moderne vervanging van callbacks.

Een belofte kan drie toestanden hebben:
- pending: het beloofde resultaat is nog niet beschikbaar;
- fulfilled: de bewerking is voltooid, het resultaat is bekend;
- rejected: de bewerking is mislukt, er is een fout opgetreden.

Beloften in Node.js worden gemaakt met de Promise constructor:

```
let p = new Promise((resolve, reject) => { // Do an async task and then…

if(/* everything turned out fine */) { resolve(“Stuff worked!”); } else { reject(Error(“It broke”)); } }); ``` Je kunt luisteren naar het voltooien van de belofte met de .then-methode, en .catch in geval van een fout. Beide accepteren callbacks die worden uitgevoerd wanneer de beloofde toestand fulfilled of rejected wordt:

```
p.then((message) => { console.log(message)
}).catch((err) => { console.log(err)
});
```
Het belangrijkste voordeel van beloften is de mogelijkheid om ze te ketenen. Met andere woorden, je kunt .then meerdere keren oproepen om verschillende asynchrone bewerkingen uit te voeren, één na de andere:

```
doSomethingAsync() .then(result => doSomethingElseAsync()) .then(newResult => doThirdThingAsync()) .then(finalResult => { console.log(‘Got the final result: ‘ + finalResult); }) .catch(failureCallback);
```
In dit geval wordt doSomethingElseAsync() pas opgeroepen nadat de eerste asynchrone bewerking is uitgevoerd, en zo verder. Als er op enig moment een fout optreedt, wordt de failureCallback-functie onmiddellijk uitgevoerd, waarbij de resterende stappen worden genegeerd.


Genereer eenvoudig artikelen om uw SEO te optimaliseren
Genereer eenvoudig artikelen om uw SEO te optimaliseren





DinoGeek biedt eenvoudige artikelen over complexe technologieën

Wilt u in dit artikel worden geciteerd? Het is heel eenvoudig, neem contact met ons op via dino@eiki.fr

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Domeinnaam | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Juridische Vermelding / Algemene Gebruiksvoorwaarden