- Promise构造函数接受一个函数作为参数。该函数的两个参数分别是resolve和reject,它们是两个函数,由JavaScript引擎提供,不用自己部署。
| |
| |
| let _promise = new Promise(function(resole,reject){ |
| |
| |
| |
| setTimeout(()=>{ |
| reject(-1) |
| },1000) |
| }); |
| |
| _promise |
| .then(res => {console.log(res)}) |
| .catch((err)=>{console.log(err)}) |
resolve函数的作用:将Promise对象的状态从“Pending未完成” 变为 "Resolved成功",在异步操作成功时调用,并将异步操作的结果作为参数传递出去;
reject函数的作用:将Promise对象的状态从“Pending未完成” 变为 "Rejectd失败",在异步操作失败时调用,并将异步操作报出的错误作为参数传递出去;
- Promise实例生成以后,可以用then方法分别指定Resolved状态和Rejected状态的回调函数。then方法接受两个回调函数作为参数。第一个回调函数是Promise对象的状态变为Resolved时调用,第二个回调函数是Promise对象的状态变为Rejected时调用。其中第二个函数是可选的,可以不提供。这两个函数都接受Promise对象传出的值作为参数。(就行axois那点的调用)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步