简单说下promise
- Promise是一个构造函数,实例化出来的promise对象有then和catch等方法
- Promise 是异步编程的一种解决方案,将异步操作以同步操作的流程表达出来,避免了层层 嵌套的回调函数,为了解决异步处理回调地狱
promise的封装分析
- 函数返回的一定是一个promise对象
- Promise传一个回调函数,这个函数的内容就是promise执行的内容(如:发起ajax请求),回调函数有reject、resolve两个方法作为形参
- 一般要调用resolve,reject方法。调用resolve,promise的执行结果会指向成功,执行then里的内容;调用reject,promise的执行结果会指向失败,执行catch里的内容, resolve,reject和then,catch是因果关系
promise的简单封装
function fn(flag){
return new Promise((resolve,reject)=>{
if(flag){
resolve('成功执行then')
}else{
reject('失败执行catch')
}
})
}
fn(false).then(res=>{
console.log(res);
}).catch(error=>{
console.log(error);
})
执行结果为‘失败执行catch’