在js中函数等另一个函数执行完再执行怎么写
时间: 2024-10-16 19:21:16 浏览: 4
在 JavaScript 中,如果你想让一个函数在另一个函数执行完毕后再执行,你可以通过将前一个函数作为回调函数传递给后一个函数,或者使用 Promise、async/await 等异步控制结构。这里有几个例子:
1. **直接回调**:
```javascript
function asyncFunction(callback) {
// 异步操作,例如 AJAX 请求
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => callback(data)); // 在数据返回后调用回调
}
function myCallback(data) {
console.log('Data received:', data);
}
asyncFunction(myCallback); // 在 asyncFunction 完成后执行 myCallback
```
2. **Promise**:
```javascript
function fetchData() {
return new Promise((resolve, reject) => {
// 异步操作...
setTimeout(() => resolve('data'), 2000);
});
}
fetchData().then(data => {
console.log('Data:', data);
});
```
3. **async/await**:
```javascript
async function getData() {
const data = await fetch('https://api.example.com/data');
return data.json();
}
getData().then(data => {
console.log('Data:', data);
});
```
以上每种方式都会保证 `myCallback` 或类似函数在异步操作完成后被执行。