JavaScript

Wat zijn callbacks, promises en async/await?

Dit zijn 3 manieren om asynchrone code te hanteren. Modern: async/await.

Home/Categorieën/JavaScript/Wat zijn callbacks, promises en async/await?

Callbacks (oud)

Functie als parameter. Probleem: callback hell met nested callbacks.

Promises (beter)

new Promise((resolve, reject) => {...}) Chain met .then().catch() Testen of rejected: .finally()

Async/Await (best)

async function maakt functie promise-based await wacht op promise resolution Try/catch voor error handling

Code Voorbeelden

JAVASCRIPTCallbacks vs Promises vs Async
// Callbacks (Vermijd!)
function fetchData(callback) {
  setTimeout(() => {
    callback(null, "Data");
  }, 1000);
}

fetchData((err, data) => {
  console.log(data);
});

// Promises (Beter)
function fetchData() {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve("Data");
    }, 1000);
  });
}

fetchData()
  .then(data => console.log(data))
  .catch(err => console.error(err))
  .finally(() => console.log("Done"));

// Async/Await (Best!)
async function getData() {
  try {
    const data = await fetchData();
    console.log(data);
  } catch (err) {
    console.error(err);
  } finally {
    console.log("Done");
  }
}

getData();

Relevante trefwoorden

asyncawaitpromisecallback