Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

ASSINCRONO X SINCRONO

Então se eu tiver

console.log(funcaoAssincrona()); console.log(funcaoSincrona());

E a funcaoAssincrona() retorna 1 e a funcaoSincrona() retorna 2 então a exibição será:

2 1

Correto?

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta
solução!

Não, pois o programa que está imprimindo a saída é sincrono, e o JavaScript é single threaded, então o console.log da func assincrona deve ser avaliado antes do console.log da func sincrona, ja que foi assim que você escreveu.

Fora que, se funcaoAssincrona for assíncrona mesmo, ela retornaria um objeto do tipo Promise que resolverá para o valor 1 -- e não o valor 1 em si. Logo,console.log(funcaoAssincrona())imprimiria algo como Promise { pending }

Se o console estivesse dentro das funções, aí sim a saída poderia ser 2 1