new Promise的用法
时间: 2023-07-25 17:09:25 浏览: 90
Promise用法
`Promise` 是一个 JavaScript 对象,它代表了一个异步操作的最终完成或者失败,并且它的返回值可以被链式调用。`Promise` 的主要作用是优化异步编程,避免回调地狱。
`Promise` 构造函数接受一个函数作为参数,这个函数有两个参数:`resolve` 和 `reject`。当异步操作成功时,调用 `resolve` 函数并传入结果数据,当异步操作失败时,调用 `reject` 函数并传入错误信息。`Promise` 实例提供了 `then` 方法来获取异步操作成功的结果,并提供了 `catch` 方法来获取异步操作失败的原因。
下面是一个简单的 `Promise` 示例:
```javascript
const promise = new Promise((resolve, reject) => {
setTimeout(() => {
const randomNum = Math.random();
if (randomNum > 0.5) {
resolve(randomNum);
} else {
reject(new Error('Random number is too small.'));
}
}, 1000);
});
promise.then((result) => {
console.log(`The result is ${result}.`);
}).catch((error) => {
console.log(`Error occurred: ${error.message}.`);
});
```
上面的例子中,我们创建了一个 `Promise` 实例,设置了一个 1 秒钟后执行的异步操作,异步操作的结果是一个随机数,如果随机数大于 0.5,则调用 `resolve` 函数并传入随机数,否则调用 `reject` 函数并传入一个错误对象。然后我们使用 `then` 方法来获取异步操作成功的结果,并使用 `catch` 方法来获取异步操作失败的原因。
阅读全文