Promise的基本语法及其then方法

一.先看看promise

实例化 Promise【承诺】 对象

相当于一个容器,保存着未来才会结束的事件(异步操作) 的一个结果

各种异步操作都可以用同样的方法进行处理 axios

特点:

1. 对象的状态不受外界影响,处理异步操作有三个状态:Pend(进行中)、Resolve(成功的)、Reject(失败的)

2. 一旦状态改变,就不会再变,任何时候都可以得到这个结果

3.【resovle(), reject() 可以返回成功、失败的结果】

1.我们先new一个promise对象

注意:这里我们的 promise 是对象

const p = new Promise(function(resolve, reject) {
            setTimeout(function() {
                // 成功的调用
                // let data = '数据库中的用户数据';
                // resolve(data);

                // 失败的调用
                let err = '数据读取失败';
                reject(err);

            }, 1000);
        });

这里面的resolve是成功的调用: 调用resolve时,p就是成功,reject是失败的调用

2.then方法

注意:这里我们then 是 promise里面的一个方法

then方法有两个函数参数,函数有形参,成功的形参一般叫value,失败的形参叫reason。

 如果已经调用了成功的方法,失败的方法就不会执行。

        //调用 promise 对象的 then 方法 对状态进行回调
        p.then(function(value) { // 成功的函数
            console.log(value); // 数据库中的用户数据

        }, function(reason) { // 失败的函数
            console.error(reason); // 数据读取失败
        })

3.总的看来

这里在外面传递秒数控制输出,并成功的返回 hello promise success!

        function timeOut(ms) {
            return new Promise((resolve, reject) => {
                setTimeout(() => {
                    resolve('hello promise success!');
                }, ms)
            })
        }
        timeOut(2000).then((val) => {
            console.log(val); // hello promise success!
        })

2.用Promise对AJAX进行简单的封装_KD℡的博客-CSDN博客

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

打不着的大喇叭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值