Javascript. Event Loop y Promises

Cómo funciona el Event Loop de Javascript a la hora de ejecutar código asíncrono

Image for post
Image for post

Sí, Javascript es síncrono

El Event Loop de Javascript

Image for post
Image for post
Image for post
Image for post
Image for post
Image for post
Image for post
Image for post

Promises

const p = new Promise(function(resolve, reject) {
return setTimeout(function() {
resolve(1);
}, 10000);
});
p.then(function(value) {
console.log(value)
});
// 1

Podemos definir una Promise como un objeto que puede produce un único valor en algún momento del futuro, bien sea un valor resulto bien la razón por la que no pudo resolverse.

Promises y Event Loop

console.log('start');  
Promise.resolve()
.then(function() {
console.log('promise 1');
})
.then(function() {
console.log('promise 2');
});
console.log('end');
// start
// end
// promise 1
// promise 2
console.log('start');  setTimeout(function() {   
console.log('timeout finished');
}, 0);
Promise.resolve()
.then(function() {
console.log('promise 1');
})
.then(function() {
console.log('promise 2');
});
console.log('end');
// start
// end
// promise 1
// promise 2
// timeout finished

Conclusiones

¿Quieres recibir más artículos como este?

Entre paseo y paseo con Simba desarrollo en Symfony y React

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store