JS为什么能够执行并发请求?
什么是消息队列?
什么是事件循环?
事件循环的基本流程
事件循环的例子
console.log('main1');
process.nextTick(function() {
console.log('process.nextTick1');
});
setTimeout(function() {
console.log('setTimeout');
process.nextTick(function() {
console.log('process.nextTick2');
});
}, 0);
new Promise(function(resolve, reject) {
console.log('promise');
resolve();
}).then(function() {
console.log('promise then');
});
console.log('main2');
- main1
- promise
- main2
- process.nextTick1
- promise then
- setTimeout
- process.nextTick2