promise入门demo

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<script>
/*
 *   定义两个Promise实例化对象,这两个是需要异步操作的两个方法
 *   在promise对象实例化是传入一个方法,这个方法两个参数,一个是异步调用成功,一个是失败
 *   这个方法里面执行的异步操作会在结束时调用一下resolve
 *   执行是在then里面执行,then的函数要有resolve才能执行,然后通过return来执行下一个then
 *   首先调用demo1的then方法,传入一个方法,相当于resolve,然后按照then一步一步往下执行
 */
function demo1 () {
        var p = new Promise(function(resolve, reject){
            //做一些异步操作
            setTimeout(function(){
                console.log('success11');
                resolve("test1");
            }, 2000);
        });
        return p;
}

function demo2 () {
        var p2 = new Promise(function(resolve, reject){
            //做一些异步操作
            setTimeout(function(){
                console.log('success22');
                resolve("test2");
            }, 1000);
        });
        return p2;
}

        demo1().then(function(data){
            console.log(data);
            return demo2();
        }).then(function(data) {
            console.log(data);
            return demo1();
        })


</script>
</body>
</html>

 

posted @ 2017-12-17 13:42  谢大帅哥  阅读(369)  评论(0编辑  收藏  举报