为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的输出有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

正在回答

3 回答

人家老师代码里在1-1前也没写console.log(value)啊,弟弟,你这个100是接受的外层resolve里的参数

0 回复 有任何疑惑可以回复我~


谢谢解答。

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

http://img1.sycdn.imooc.com//5e02bafe0001ccb906330843.jpg

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我的输出有100?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信