js中异步事件中容易混淆的 Promise 和 setTimeout 的执行顺序是怎样的?

        setTimeout(() => console.log(1), 0);

        new Promise(function (resolve, reject) {
console.log(2);
//resolve(1);
setTimeout(function(){
console.log(3);
resolve(1);
}, 0);
})
.then(() => {
console.log(4)
}) console.log(5) setTimeout(() => console.log(6), 1000); setTimeout(() => console.log(7), 0); setTimeout(() => console.log(8), 1000);

输出:

    2
    5
    1
    3
    4
    7
    6
    8

如果Promise中不包含异步事件:

        setTimeout(() => console.log(1), 0);

        new Promise(function (resolve, reject) {
console.log(2);
resolve(1);
// setTimeout(function(){
// console.log(3);
// resolve(1);
// }, 0);
})
.then(() => {
console.log(4)
}) console.log(5) setTimeout(() => console.log(6), 1000); setTimeout(() => console.log(7), 0); setTimeout(() => console.log(8), 1000);

输出:

    2
    5
    4
    1
    7
    6
    8

最新文章

  1. 从ord()中对Unicode编码的理解
  2. css制作对话框
  3. 为 Neutron 准备物理基础设施(I) - 每天5分钟玩转 OpenStack(75)
  4. Android APK如何签名
  5. mysql binlog日志查看及解码
  6. JSON: Property 'xxx' has no getter method的解决办法
  7. javascript序列化json 第二篇
  8. PHPCMS V9 框架代码分析(入口程序)
  9. CAS单点登录之mysql数据库用户验证及常见问题
  10. javascript-处理XML
  11. Ultra Office Control 2.0
  12. Appium基于安卓的各种FindElement的控件定位方法实践和建议
  13. C# asp.net PhoneGap html5
  14. 服务器部署Apache+PHP+MYSQL+Laravel
  15. ASP.NET Web API决跨域问题
  16. open-falcon自定义push数据无法在grafana显示
  17. 快速傅里叶变换(FFT)_转载
  18. hash的安全性
  19. 图示NP, P, NP-Complete和NP-Hard问题
  20. 学号20155308 2006-2007-2 《Java程序设计》第3周学习总结

热门文章

  1. 002-创建型-01-工厂方法模式(Factory Method)
  2. osg::PagedLOD example
  3. Qt编写控件属性设计器6-动态属性
  4. jmeter 和 postman 提交 传输类型为 "multipart/form-data" 的传送写法
  5. PAT 甲级 1053 Path of Equal Weight (30 分)(dfs,vector内元素排序,有一小坑点)
  6. Flask 应用如何部署
  7. ElasticSearch文档删除字段
  8. 给 textbox TextMode="password" 赋值后显示出来
  9. Docker 容器的资源限制 cgroup(九)
  10. sqlserver 数据库操作导出数据sql工具