ES6---Promise 4:

时间:2020-04-14 22:23:50   收藏:0   阅读:70

 

 

1. 

    var p1 = new Promise((resolve, reject) => {
    });
    var p2 = p1.then(
        result => { },
        error => { }
    );
    //可以看到p1和p2都是promise,还可以看到状态
    console.log(p1);
    console.log(p2);

 

console:

技术分享图片

 

 

2. 

    var p1 = new Promise((resolve, reject) => {
        resolve(‘成功了‘);
    });
    var p2 = p1.then(
        result => {
            console.log(‘2‘);
        },
        error => { }
    );

    console.log(p1);
    console.log(p2);

 

console:

技术分享图片

 

 

3. 

    var p1 = new Promise((resolve, reject) => {
        resolve(‘成功了‘);//运行在主线程
    }).then(
        result => {
            console.log(‘2‘);//运行在微任务列表
        },
        error => { }
    );
    console.log(‘abc‘);

 

console:

技术分享图片

 

 

4. 

    //传值的问题
    var p1 = new Promise((resolve, reject) => {
        resolve(‘成功了‘);//运行在主线程
    }).then(
        result => {
            console.log(‘微任务接收数据:‘ + result);//运行在微任务列表
        },
        error => { }
    );
    console.log(‘abc‘);

 

console:

技术分享图片

 

 

5.

    var p1 = new Promise((resolve, reject) => {
        resolve(‘成功了‘);//运行在主线程
    }).then(
        result => {
            console.log(‘微任务接收数据:‘ + result);//运行在微任务列表
        },
        error => { }
    ).then(
        result => {
            console.log(3);
        },
        error => { }
    )
    console.log(‘abc‘);

 

console:

技术分享图片

 

 6. 

    var p1 = new Promise((resolve, reject) => {
        resolve(‘成功了‘);//运行在主线程
    }).then(
        result => {
            console.log(‘微任务接收数据:‘ + result);//运行在微任务列表
        },
        error => { }
    ).then(
        result => {
            console.log(3 + result);
        },
        error => { }
    )
    console.log(‘abc‘);

 

console:

技术分享图片

 

 7. then怎么传值?答案用return

    var p1 = new Promise((resolve, reject) => {
        resolve(‘成功了‘);//运行在主线程
    }).then(
        result => {
            console.log(‘微任务接收数据:‘ + result);//运行在微任务列表
            //这里怎么传值?答案用return
            return ‘bbbb‘;
        },
        error => { }
    ).then(
        result => {
            console.log(3 + result);//Na  N
        },
        error => { }
    )
    console.log(‘abc‘);

 

console:

技术分享图片

 

原文:https://www.cnblogs.com/jane-panyiyun/p/12700975.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!