创建一个 JavaScript Promise
Promise 是异步编程的一种解决方案 - 它在未来的某时会生成一个值。 任务完成,分执行成功和执行失败两种情况。 Promise 是构造器函数,需要通过 new 关键字来创建。 构造器参数是一个函数,该函数有两个参数 - resolve 和 reject。 通过它们来判断 promise 的执行结果。 用法如下:
const myPromise = new Promise((resolve, reject) => {
});
Promise 有三个状态:pending、fulfilled 和 rejected。
Promise 提供的 resolve 和 reject 参数就是用来结束 promise 的。 Promise 成功时调用 resolve,promise 执行失败时调用 reject
const myPromise = new Promise((resolve, reject) => {
if(condition here) {
resolve("Promise was fulfilled");
} else {
reject("Promise was rejected");
}
});
当程序需要花费未知的时间才能完成时(比如一些异步操作),一般是服务器请求,promise 很有用。 服务器请求会花费一些时间,当结束时,需要根据服务器的响应执行一些操作。 这可以用 then 方法来实现.\
当 promise 完成 resolve 时会触发 then 方法。
myPromise.then(result => {
});
当 promise 失败时会调用 catch 方法。 当 promise 的 reject 方法执行时会直接调用。
myPromise.catch(error => {
});