JavaScript 异步
Callback → Promise → Async/Await
javascript
// Promise
function fetchData() {
return fetch('/api/data')
.then(res => res.json())
}
// Async/Await
async function fetchData() {
const res = await fetch('/api/data')
return res.json()
}并发控制
javascript
// 并行执行
const [users, posts] = await Promise.all([
fetchUsers(),
fetchPosts()
])
// 竞速
const fastest = await Promise.race([
fetchPrimary(),
fetchBackup()
])错误处理
javascript
try {
const data = await fetchData()
} catch (error) {
console.error('请求失败:', error)
}