美文网首页
关于javascript事件循环的一些题

关于javascript事件循环的一些题

作者: 5df463a52098 | 来源:发表于2018-01-22 17:44 被阅读23次
// 测试代码
console.log('main1');
// 该函数仅在 Node.js 环境下可以使用
process.nextTick(function(){
    console.log('process.nextTick1');
});
setTimeout(function(){
    console.log('setTimeout');
    process.nextTick(function(){
        console.log('process.nextTick2');
    });
},0);
newPromise(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
function  foo(){
    console.log("Start of queue");
    bar();
    setTimeout(function(){
        console.log("Middle of queue");
    },0);
    Promise.resolve().then(function(){
        console.log("Promise resolved");
        Promise.resolve().then(function(){
            console.log("Promise resolved again");
        });
    });
   console.log("End of queue");
}

function bar(){
    setTimeout(function(){
          console.log("Start of next queue");
    },0);
    setTimeout(function(){
          console.log("End of next queue");
    },0);
}

foo();

// 输出

Start of queue
Endof queue
Promise resolved
Promise resolved again
Start of next queue
Endof next queue
Middle of queue

Promise.then 是异步执行的,而创建 Promise 实例 (executor) 是同步执行的

相关文章

  • 关于javascript事件循环的一些题

    Promise.then 是异步执行的,而创建 Promise 实例 (executor) 是同步执行的

  • 聊一聊浏览器事件循环与前端性能

    在网上也看了不少关于javascript事件循环的文章,多数是以浏览器事件循环与nodejs中事件循环做对比,分析...

  • Js事件循环

    列表 JavaScript事件循环 测试金字塔 stub JavaScript事件循环理解 javaScript语...

  • JavaScript事件循环

    解释JavaScript的事件循环 这个帖子关于什么 浏览器普遍将JavaScript作为脚本语言,这篇文章有利于...

  • iOS RunLoop由浅入深

    Event Loop Event Loop事件循环机制,如javascript的事件循环,以及依赖其的nodejs...

  • JavaScript事件循环

    js是一门单线程的语言,不可能进行多线程编程,异步编程就是多线程编程一种模式,但是我们经常讲到js的异步编程,其实...

  • JavaScript - 事件循环

    前言 JavaScript是一门单线程、非阻塞的脚本语言。 单线程意味着javascript代码在执行的任何时候,...

  • javascript事件循环

    EventLoop 以下内容仅限于自己理解,可能并不全面或者有错误 参考文档:https://www.cnblog...

  • javascript事件循环

    异步任务栈分为: 宏任务(macrotask): setTimeout setImmediate setInter...

  • JavaScript事件循环

    事件循环是什么?事实上我把事件循环理解成我们编写的JavaScript和浏览器或者Node之间的一个桥梁。 浏览器...

网友评论

      本文标题:关于javascript事件循环的一些题

      本文链接:https://www.haomeiwen.com/subject/bgcraxtx.html