Sobes.tech
Middle+

Vertel over de Event Loop: wat is het, hoe werkt het?

sobes.tech AI

Antwoord van AI

Event Loop — is een mechanisme in JavaScript en andere single-threaded omgevingen dat asynchrone operaties kan verwerken zonder de hoofdthread te blokkeren.

Hoe het werkt:

  1. Er is een call stack waarop functies worden geplaatst voor uitvoering.
  2. Asynchrone operaties (bijvoorbeeld timers, netwerkverzoeken) sturen hun callbacks naar de task queue nadat ze voltooid zijn.
  3. De Event Loop controleert voortdurend of de call stack leeg is. Als dat zo is, pakt hij de eerste taak uit de queue en plaatst deze op de stack voor uitvoering.

Op deze manier wordt, zelfs bij asynchrone operaties, de code sequentieel uitgevoerd, zonder de UI of andere processen te blokkeren.

Voorbeeld:

console.log('Start');
setTimeout(() => {
  console.log('Timeout');
}, 0);
console.log('End');

De output zal zijn:

Start
End
Timeout

Omdat de callback van setTimeout in de task queue terechtkomt en wordt uitgevoerd nadat de call stack vrij is.