JavaScript Promises 是一種簡化處理異步操作的方法,它表示一個(gè)異步操作的最終結(jié)果。Promise 在 JavaScript 中有很多應(yīng)用場景,以下是一些常見的例子:
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
fs
模塊提供了返回 Promise 的 API,用于讀取文件內(nèi)容。const fs = require('fs');
fs.readFile('example.txt', 'utf-8')
.then(content => console.log(content))
.catch(error => console.error('Error:', error));
<button id="myButton">Click me</button>
<script>
document.getElementById('myButton').addEventListener('click', () => {
return new Promise((resolve, reject) => {
// 模擬用戶操作
setTimeout(() => {
resolve('User clicked the button');
}, 1000);
});
});
</script>
function delay(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
delay(1000).then(() => console.log('Delay completed'));
Promise.all()
方法來并行執(zhí)行多個(gè) Promise,當(dāng)所有 Promise 都成功解析時(shí),該方法返回一個(gè)新的解析為所有解析值的 Promise。const promise1 = Promise.resolve(1);
const promise2 = Promise.resolve(2);
const promise3 = Promise.resolve(3);
Promise.all([promise1, promise2, promise3])
.then(values => console.log(values)) // 輸出:[1, 2, 3]
.catch(error => console.error('Error:', error));
總之,JavaScript Promises 在處理異步操作時(shí)非常有用,它們使得代碼更加簡潔、易于理解和維護(hù)。