Sobes.tech
Middle+

/** * É necessário escrever uma função assíncrona, * que "durma" a quantidade de milissegundos especificada, * e depois termine com sucesso */ function sleep(duration) { } // Exemplo const startTime = Date.now(); console.log("Começando a dormir..."); sleep(2000).then(() => { console.log("Acordou após 2 segundos!"); console.log("Tempo passado: ", Date.now() - startTime); }); sleep(1000).then(() => { console.log("Acordou após 1 segundo!"); console.log("Tempo passado: ", Date.now() - startTime); });

sobes.tech IA

Resposta da IA

A função sleep deve retornar uma Promessa que se resolve após a quantidade de milissegundos especificada. Isso pode ser implementado usando setTimeout dentro da Promessa:

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

O exemplo de uso na questão funcionará corretamente, exibindo mensagens após o tempo de espera especificado.