- promise:是一个将来会返回值的对象,由于这种未来的东西,Promises非常适合异步JavaScript操作。在js中,我们说这个promise实现了(resolved),当一个承诺得到实现时,你会在.then调用中做下一件事情:
jeffBuyCake('black forest').then(partyAsPlanned)
复制代码
如果承诺被拒绝(rejected),可以在.catch调用中执行应急计划。
-
构建一个promise
你可以使用new promise来创建一个promise。这个promise构造函数是一个包含两个参数--resolve和reject的函数。
const promise = new Promise((resolve, reject) =>{
// todo
})
复制代码
如果resolve被调用,promise成功并非继续进入then链式操作,你传递给resolve的参数将是接下来then调用中的参数:
const promise = new Promise((resolve, reject) => {
return resolve(27)
})
promise.then(number => console.log(number) // 27
复制代码
如果reject被调用,promise失败并继续进入catch链式操作,同样的,你传递reject的参数将是catch调用中的参数:
const promise = new Promise((resolve, reject) => {
return reject("...")
})
promise.catch(err => console.log(err)) // ...
复制代码
-
js函数节流和防抖
转载