JS 等待上面处理完了再下一步
时间: 2024-09-30 08:12:23 浏览: 6
JavaScript 中,如果你想等待某个异步操作完成后才继续执行后续代码,可以利用 Promise、async/await 或者回调函数的方式实现。这里我们举几个例子:
1. **Promise 链接**:
```javascript
function asyncOperation() {
return new Promise((resolve, reject) => {
// 模拟耗时操作
setTimeout(() => {
resolve('操作完成');
}, 2000);
});
}
asyncOperation()
.then(data => {
console.log(data); // 操作完成 后才会执行这里的代码
// 下一步操作...
})
.catch(err => {
console.error(err);
});
```
2. **async/await**:
```javascript
async function awaitExample() {
try {
const result = await asyncOperation();
console.log(result); // 操作完成 后才会执行这里的代码
// 下一步操作...
} catch (err) {
console.error(err);
}
}
awaitExample();
```
3. **回调函数** (适合事件驱动的场景):
```javascript
function operation(callback) {
setTimeout(() => {
callback('操作完成');
}, 2000);
}
operation((data) => {
console.log(data);
// 下一步操作...
});
```
无论哪种方法,都是为了确保当前的操作线程不会在异步操作未完成时就跳到下一行,而是会等待结果返回后再继续。