promise实例

Posted smlpig

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了promise实例相关的知识,希望对你有一定的参考价值。

  不废话,粘代码

    function ajax(method, url, data) 
        let request = new XMLHttpRequest();
        return new Promise(function (resolve, reject) 
            request.onreadystatechange = function () 
                if (request.readyState === 4) 
                    if (request.status === 200) 
                        resolve(request.responseText);
                     else 
                        reject(request.status);
                    
                
            ;
            request.open(method, url);
            request.send(data);
        );
    
    let p = ajax(‘GET‘, ‘config.json‘);
    p.then(function (text)  // 如果AJAX成功,获得响应内容
        console.log(text);
    ).catch(function (status)  // 如果AJAX失败,获得响应代码
        console.log(status);
    );

以上是模拟ajax实现

    let promise=new Promise((resolve, reject) => 
        console.log("1")
        reject("我错了");
        resolve("123");
    );
    promise.then(function(data)
        console.log("3")
        console.log(data)
    ,function(err)
        console.log("4")
        console.log(err)
    )
    console.log("2")

以上是用来测试promise的执行顺序

以上是关于promise实例的主要内容,如果未能解决你的问题,请参考以下文章

前端面试题之手写promise

澄清 node.js + promises 片段

对Promise的研究3

创建片段而不从 java 代码实例化它

什么时候然后从Promise.all()的子句运行?

promise实例