Есть несколько способов выполнения функции после завершения работы предыдущей функции в JavaScript. Давайте поговорим о некоторых из них:
1. Использование Callback. Callback - это функция, которая вызывается после завершения выполнения другой функции. Посмотрите пример ниже:
```javascript
function firstFunction(callback) {
// Эмулируем асинхронный код с помощью setTimeout
setTimeout(function() {
console.log('First function finished');
callback();
}, 1000);
}
function secondFunction() {
console.log('Second function finished');
}
firstFunction(secondFunction);
```
2. Использование Promises. Промисы используются для обработки асинхронных операций в JavaScript. Вот как это выглядит:
```javascript
function firstFunction() {
return new Promise(function(resolve, reject) {
setTimeout(function() {
console.log('First function finished');
resolve();
}, 1000);
});
}
function secondFunction() {
console.log('Second function finished');
}
firstFunction().then(secondFunction);
```
3. Использование Async/Await. Это более современный подход к обработке асинхронного кода в JavaScript. Вот пример:
```javascript
async function firstFunction() {
return new Promise(function(resolve, reject) {
setTimeout(function() {
console.log('First function finished');
resolve();
}, 1000);
});
}
async function secondFunction() {
await firstFunction();
console.log('Second function finished');
}
secondFunction();
```
На практике выбор метода зависит от ваших потребностей и возможностей вашего кода. Помните, что асинхронный код может быть более сложным для отладки и понимания, чем синхронный код, поэтому старайтесь всегда писать код максимально читаемым.