Olá, Rosemberg! Como vai?
Sim, você está correto. Se você remover async e await de uma função assíncrona, ela se comportará como uma função síncrona normal. Isso significa que, ao invés de esperar que uma operação assíncrona seja concluída antes de prosseguir, a função continuará a execução das próximas linhas de código imediatamente, sem esperar pela conclusão da operação assíncrona.
Por exemplo, considere uma função que lê um arquivo e depois faz algo com o conteúdo. Com async e await, você pode escrever o código de forma que ele pareça síncrono, esperando pela leitura do arquivo antes de prosseguir. Sem async e await, você precisaria usar .then() para lidar com a promessa retornada pela operação de leitura do arquivo, o que pode tornar o código um pouco mais difícil de ler.
Aqui está um exemplo prático:
Com async e await:
async function lerArquivo() {
const conteudo = await fs.promises.readFile('meuArquivo.txt', 'utf-8');
console.log(conteudo);
}
Sem async e await:
function lerArquivo() {
fs.promises.readFile('meuArquivo.txt', 'utf-8')
.then(conteudo => {
console.log(conteudo);
})
.catch(erro => {
console.error(erro);
});
}
Ambas as abordagens são válidas, mas async e await geralmente tornam o código mais fácil de entender e manter, especialmente quando você tem várias operações assíncronas encadeadas.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.