promise的多个then的事件循环顺序

js 复制代码
new Promise((resolve, rejcet) => {
  console.log('promise1');
  resolve();
}).then(() => {
  console.log('then11');
  new Promise((resolve, reject) => {
    console.log('promise2');
    resolve();
  }).then(() => {
    console.log('then21');
  }).then(() => {
    console.log('then23');
  })
}).then(() => {
  console.log('then12');
})

我以为then是同时执行的,即异步。其实then是同步的,只能一个个执行,等待一个执行完毕了才能走下一个

他这里两个then,就是说,不会一次一起执行then,把then里面的东西放入微任务,而是把一个then当作一轮循环来执行了。

的确,不了解的话,写代码容易出现执行顺序不对的问题

相关推荐
一叶茶8 分钟前
VsCode和AI的前端使用体验:分别使用了Copilot、通义灵码、iflyCode和Trae
前端·vscode·gpt·ai·chatgpt·copilot·deepseek
熊猫钓鱼>_>14 分钟前
基于MCP的桥梁设计规范智能解析与校审系统构建实践
前端·easyui·设计规范
qq_3462952714 分钟前
require/exports 或 import/export的联系和区别,各自的使用场景
javascript
flying robot17 分钟前
小结:JavaScript 模块化工具链
javascript
若初&25 分钟前
文件上传Ⅲ
前端·web安全
若愚679225 分钟前
前端取经路——前端安全:构建坚不可摧的Web应用防线
前端·安全
邪恶的贝利亚29 分钟前
定时器设计
java·linux·前端
工业互联网专业31 分钟前
基于springboot+vue的机场乘客服务系统
java·vue.js·spring boot·毕业设计·源码·课程设计·机场乘客服务系统
inksci1 小时前
Vue 3 打开 el-dialog 时使 el-input 获取焦点
前端·javascript·vue.js