Sobes.tech
Middle+

/** * Je nutné napsat asynchronní funkci, * která bude "spát" zadaný počet milisekund, * a poté úspěšně dokončí */ function sleep(duration) { } // Příklad const startTime = Date.now(); console.log("Začínám spát..."); sleep(2000).then(() => { console.log("Probudil se po 2 sekundách!"); console.log("Uplynulý čas: ", Date.now() - startTime); }); sleep(1000).then(() => { console.log("Probudil se po 1 sekundě!"); console.log("Uplynulý čas: ", Date.now() - startTime); });

sobes.tech AI

Odpověď od AI

Funkce sleep by měla vracet Promise, který se vyřeší po zadaném počtu milisekund. To lze realizovat pomocí setTimeout uvnitř Promise:

function sleep(duration) {
    return new Promise(resolve => {
        setTimeout(resolve, duration);
    });
}

Příklad použití z otázky bude fungovat správně, zobrazí zprávy po uplynutí zadané doby čekání.