码迷,mamicode.com
首页 > 其他好文 > 详细

es6 语法 (Promise)

时间:2017-10-23 21:52:25      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:back   callback   class   err   function   new   es6   catch   ons   

{
    // 基本定义
    let ajax = function(callback) {
        console.log(‘执行‘); //先输出 1 执行
        setTimeout(function() {
            callback && callback.call()
        }, 1000);
    };
    ajax(function() {
        console.log(‘timeout1‘); //后输出 timeout1
    })
}

{
    let ajax = function() {
        console.log(‘执行2‘); //先输出 1 执行2
        return new Promise(function(resolve, reject) {
            setTimeout(function() {
                resolve()
            }, 1000)
        })
    };
    ajax().then(function() {
        console.log(‘Promise‘, ‘timeout2‘); //后输出 timeout1 Promise timeout2
    })
}

{
    let ajax = function() {
        console.log(‘执行3‘); //先输出 1 执行3
        return new Promise(function(resolve, reject) {
            setTimeout(function() {
                resolve()
            }, 1000)
        })
    };
    ajax().then(function() {
            console.log(‘执行4‘); //后输出 2 执行4
            return new Promise(function(resolve, reject) {
                setTimeout(function() {
                    resolve()
                }, 2000);
            });
        })
        .then(function() {
            console.log(‘timeout3‘); //后输出 3 timeout3
        })
}

{
    let ajax = function(num) {
        console.log("执行5");
        return new Promise(function(resolve, reject) {
            if (num > 5) {
                resolve()
            } else {
                throw new Error("出错了");
            }
        });
    }
    ajax(6).then(function() {
        console.log("log", 6); //log 6
    }).catch(function(err) {
        console.log("catch", err);
    });
    ajax(3).then(function() {
        console.log("log", 3);
    }).catch(function(err) {
        console.log("catch", err); //catch Error: 出错了
    });
}

 

es6 语法 (Promise)

标签:back   callback   class   err   function   new   es6   catch   ons   

原文地址:http://www.cnblogs.com/Byme/p/7718854.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!