请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

麻烦请教一下老师,promise嵌套的执行顺序以及原因是什么?

麻烦请教一下老师,promise嵌套的执行顺序以及原因是什么?

new Promise(function (resolve, reject) {
    console.log('promise');
    resolve();
    new Promise(function (resolve, reject) {
        console.log('promise>>>');
        resolve();
    }).then(function () {
        console.log('resolved>>> 0')
    }).then(function () {
        console.log('resolved>>> 1')
    }).then(function () {
        console.log('resolved>>> 2')
    }).then(function () {
        console.log('resolved>>> 3')
    })
}).then(function () {
    console.log('resolved 0')
}).then(function () {
    console.log('resolved 1')
}).then(function () {
    console.log('resolved 2')
}).then(function () {
    console.log('resolved> 3')
})

图片描述

正在回答 回答被采纳积分+3

1回答

双越 2022-03-27 12:36:57

对于多个 Promise 同时执行多个 then 链式操作,JS 引擎会有一个优化策略:让这些 then 函数轮流执行,以避免单个 promise 的 then 占据太多 CPU 时间。

0 回复 有任何疑惑可以回复我~
  • 提问者 刀剑错 #1
    谢谢老师;这个有什么官方文档可以看的吗?为什么会先执行里面的then那
    回复 有任何疑惑可以回复我~ 2022-03-27 16:31:18
  • 双越 回复 提问者 刀剑错 #2
    因为里面的 then 是先注册的,按照先后顺序来执行。
    回复 有任何疑惑可以回复我~ 2022-03-27 22:47:49
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信