promise的基础认知及学习

Posted 阿曾的奶油汤

tags:

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

var flag = true;
        var message = \'我是初始值\'
        var p = new Promise(function(resolve,reject) {
            setTimeout(()=>{
                if (flag) {
                    resolve(\'异步加载成功\')
                    // 传递的相当于掉完接口得到的data
                }else {
                    reject(\'失败\')
                    // 传递的相当于掉接口失败所得的信息
                }
            },5000)
        })
        // .then()方法传递两个参数都是function,第二个参数的函数不是必填,也可写在.catch()方法里和.then同级
        p.then(function (aaa) {
            // 第一个参数用来接收成功的data并进行处理
            message=aaa
            // console.log(message);
        },function (bbb) {
            // 第二个参数用来接收失败的信息并进行处理
            message = bbb
            // console.log(message);
        })
        // console.log(message);

        // .all()方法同时处理多个异步任务,所有任务完成才能返回结果
        // .race()方法同时处理多个异步任务,只要有一个任务完成就能返回结果
        function pp(text,time) {
            return new Promise(function(resolve,reject) {
            setTimeout(()=>{
                if (flag) {
                    resolve(text)
                    // 传递的相当于掉完接口得到的data
                }else {
                    reject(\'失败\')
                    // 传递的相当于掉接口失败所得的信息
                }
            },time)
            })
        }
        // pp(\'我成功了\',3000).then((data)=>{
        //     console.log(data);
        // })
        Promise.all([pp(\'111\',1000),pp(\'222\',2000),pp(\'333\',3000)]).then((data)=>{
            console.log(data);
        })
        Promise.race([pp(\'111\',1000),pp(\'222\',2000),pp(\'333\',3000)]).then((data)=>{
            console.log(data);
        })

// 如果all方法中有一个失败,会丢弃其他所有promise的结果
//在使用这个方法的时候要记住为每个promise关联一个错误的处理函数catch.
Promise.all([p1, p2, p3].map(p => p.catch(e => return e )))
  .then(values => {
    console.log(values);
  }).catch(err => {
    console.log(err);
  })

以上是关于promise的基础认知及学习的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段12——JavaScript的Promise对象

20155201 李卓雯 《网络对抗技术》实验一 逆向及Bof基础

逆向及Bof基础实践

js异步解决方案及promise基础

关于promise的几个认知

20155307刘浩《网络对抗》逆向及Bof基础