This is my first code:
const express = require('express');
const app = express();
app.get('', (req, res) => {
setTimeout(() => console.log('timeout'));
setImmediate(() => console.log('immediate'));
Promise.resolve().then(() => console.log('promise'));
process.nextTick(() => console.log('nextTick'));
})
app.listen(3000);
When i call localhost:3000, it prints:
nextTick -> promise -> immediate -> timeout
However with second code:
setTimeout(() => console.log('timeout'));
setImmediate(() => console.log('immediate'));
Promise.resolve().then(() => console.log('promise'));
process.nextTick(() => console.log('nextTick'));
when i run it prints different:
nextTick -> promise -> timeout -> immediate
Why I have 2 different results. Thank for your attention.