课程
下载APP
源自:3-1 then 的嵌套

为什么我的输出有100?

源代码:

console.log('start');

new Promise(resolve => {

    console.log('Step 1');

    setTimeout(() => {

        resolve(100);

    }, 1000);

}).then(value => {

    return new Promise(resolve => {

        console.log(value);

        console.log('Step 1-1');

        setTimeout(() => {

            resolve(110);

        }, 1000);

    }).then(value => {

        console.log('Step 1-2');

        return value;

    }).then(value => {

        console.log('Step 1-3');

        return value;

    });

}).then(value => {

    console.log(value);

    console.log('Step 2');

});

控制台输出:

D:\Dev\node-v12.13.0-x64\node.exe sample\nested-then.js 

start

Step 1

100

Step 1-1

Step 1-2

Step 1-3

110

Step 2


2

提问者:CoderDream 2019-12-19 09:00

2个回答

  • IYogic
    2019-12-19 20:59

    肯定会有100的呀,不是刚好如图的,由1传到2,2再传到3嘛
    http://img2.mukewang.com/5dfb73f20001250205980490.jpg

  • CoderDream
    2019-12-25 09:29


    谢谢解答。

    我的疑问是老师的控制台为什么没有输出100?

    http://img1.mukewang.com/5e02bafe0001ccb906330843.jpg