promise

2023-03-16  本文已影响0人  败于化纤

promise是什么?

解决异步的传统方法是回调函数

promise()是一个构造函数,使用new Promise()返回一个promise实例对象

定义:Promise表示一个异步操作的结果
promise设计意图:为了解决异步操作的回调地狱

语法:
<new Promise(executor)
new Promise((resolve,reject)=>{
resolve:解决
reject:拒绝
})

executor(执行器函数)

返回值:返回一个promise的对象。有两个属性:

promise怎么解决的?

思路:通过Promise构造函数分离异步操作和回调函数

Promise的具体实现步骤

如何使用回调

1.Promise.prototype.then()

读音 : 探
定义:
用于为promise对象绑定回调函数
promise在异步操作的角色,连接异步操作和回调函数,换言之:

语法:

//基本语法
promise.then(fufilled,rejected)
//扩展语法
promise.then(function(data){},function(err){})

fufilled:异步操作成功时的回调函数
reject:异步操作失败时的回调函数
返回值:

2.async

关键字用于创建一个promise异步函数
语法:

asyne function fn(){}

实例:

   async  function getData(){
        const p=await new Promise((resove,reject)=>{
            let GoogdGoodStudy = true
            setInterval(function(){
                if(GoogdGoodStudy){
                    //调用resolve状态 2.在调用的同时 传入异步请求成功。
                    resove("成功")
                }else{
                    reject("失败")
                }
            },200)
        })
          //右手操作
       console.log(p);//成功
      }
    
      getData()

3.await

操作符用于计算一个异步操作的结果
语法:

asyuc fn(){
await new Promise(()=>{})
}

await关键字只能在async函数中使用

上一篇 下一篇

猜你喜欢

热点阅读