1:异步编程与Promise的关系
Promise是JavaScript中的一种异步编程范式,也就是异步编程的一种解决方案,就像是一个容器,里面保存着某个未来才会结束的事件。
2:Promise的作用与用法
作用:
解决异步回调的问题。
用法:
它有以下三种状态:
pending:初始值
fulfilled:代表操作成功
rejected:代表操作失败
var promise=new Promise(function (resolve,reject){} //构建Promise
使用new来构建一个Promise,Promise接受一个函数作为参数,该函数有两个参数分别是resolve和reject,这两个函数就是回调函数。
resolve函数的作用:在异步操作成功时调用,并将异步操作的结果,作为参数传递出去。
reject函数的作用:在异步操作失败时调用,并将异步操作报出的错误,作为参数传递出去。
Promise实例生成以后,可以用then方法指定resolved状态和reject状态的回调函数。then方法会返回一个Promise。它有两个参数,分别为Promise从pending变为fulfilled和rejected时的回调函数。
3:Promise在实际环境下的应用
编码:const promise=new Promise((resolve,reject)=>{
/昇歩操作
if (true){
resolve(/*成功的結果*/);
}else{
reiect(/*失敗的結果*/);
}
4:async/await的作用与用法
async的作用是将方法的返回值封装成Promise
await的作用,一是作为求值关键字,二是将异步操作变成同步操作。
async表示函数里有异步操作,await表示紧跟在后面的表达式需要等待结果。
async函数返回一个Promise对象,可以使用then方法添加回调函数。当函数执行的时候,一旦遇到await就会先返回,等到触发的异步操作完成,再接着执行函数体内后面的语句。