es6的promise
时间: 2024-06-21 09:01:07 浏览: 13
在ES6中,Promise是一种处理异步操作的对象,它提供了一种更为清晰的方式来编写和管理异步代码。Promise有三种状态:`pending`(等待中)、`fulfilled`(已成功)和`rejected`(已失败)。下面是一个简单的Promise示例:
```javascript
// 创建一个新的Promise
const promise = new Promise((resolve, reject) => {
// 异步操作,比如从服务器获取数据
setTimeout(() => {
const data = fetch('https://api.example.com/data'); // 假设这是一个异步操作
if (data.ok) {
resolve(data.json()); // 成功时调用resolve并传递解析后的数据
} else {
reject(new Error('Failed to fetch data')); // 失败时调用reject并传递错误
}
}, 2000);
});
// 使用then方法处理成功情况
promise.then((response) => {
console.log('Data:', response);
}).catch((error) => {
console.error('Error:', error.message);
});
```
在这个例子中,`fetch`操作返回一个Promise,如果请求成功,`resolve`方法会被调用,`then`方法会接收到解析后的数据;如果请求失败,`reject`方法会被调用,`catch`方法会捕获并处理错误。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)