promist
promise
promise就相当于是一个容器,可以直接把异步调用的结果存储到promise中,resolve是成功的内容,reject存储失败的内容
then
const promist = new Promise((resolve,reject) =>
resolve(1)
}).then((data) =>{
console.log(data) //1
})
const promist = new Promise((resolve,reject) =>{
reject(1)
}).then((data) =>{
console.log(data) //报错
})
这是因为then的第一个参数是获取resolve的数据,第二个参数是获取reject时调用
const promist = new Promise((resolve,reject) =>{
//resolve(1)
reject('err')
}).then((data) =>{
console.log(data)
},(err) =>{
console.log(err) //err
})
then的第二个回调函数会执行在执行时异常信息或时reject中返回的数据会作为参数传递
const promist = new Promise((resolve,reject) =>{
//resolve(1)
throw new Error("sdfwef");
// reject('err')
}).