new Promise 是 JavaScript 中用于处理异步操作的一种方式。Promise 是一种代表了异步操作最终完成或者失败的对象。它有三个状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。
创建一个新的 Promise 通常需要一个函数作为参数,这个函数接收两个参数:resolve 和 reject,分别用于在异步操作成功和失败时改变 Promise 的状态。
下面是一个简单的例子:
javascript
let promise = new Promise((resolve, reject) => {
// 这是一个异步操作,可能需要一些时间来完成
setTimeout(() => {
// 异步操作成功,我们用 resolve() 来改变 Promise 的状态
resolve("操作成功!");
}, 1000);
});
promise.then(
// 这是一个处理成功的回调函数,它会在 Promise 的状态改变为 fulfilled 时执行
result => console.log(result),
// 这是一个处理失败的回调函数,它会在 Promise 的状态改变为 rejected 时执行
error => console.log(error)
);
在这个例子中,我们创建了一个新的 Promise,这个 Promise 在一秒后将状态改变为 fulfilled,并返回字符串 "操作成功!"。我们使用 .then() 方法来指定当 Promise 的状态改变时应该执行的回调函数。第一个回调函数会在 Promise 的状态改变为 fulfilled 时执行,第二个回调函数会在 Promise 的状态改变为 rejected 时执行。