// Необходимо выполнить таски
// Перед началом выполнения нужно вызвать onStart
// После выполнения всех тасок нужно вызвать onEnd
// (Работаем с этим кодом, меняем как угодно)
// Эти функции обязательные (Изменять не можем)
function heavyJob(idx, ms, callback) {
setTimeout(() => {
console.log(`Task ${idx} is done`);
if (callback) callback(idx);
}, ms);
}
function onStart() {
console.log("Start");
}
function onEnd() {
console.log("All tasks completed");
}
const task1 = (callback = () => {}) => heavyJob(1, 1500, callback);
const task2 = (callback = () => {}) => heavyJob(2, 1000, callback);**Ответ
function heavyJob(idx, ms, callback) {
setTimeout(() => {
console.log(`Task ${idx} is done`);
if (callback) callback(idx);
}, ms);
}
function onStart() {
console.log("Start");
}
function onEnd() {
console.log("All tasks completed");
}
const task1 = (callback = () => {}) => heavyJob(1, 1500, callback);
const task2 = (callback = () => {}) => heavyJob(2, 1000, callback);
onStart();
task1(() => {
task2(() => {
onEnd();
});
});