Pelo que eu vinha entendendo das aulas o JS interpreta os números ou expressões numéricas fora dos parênteses como string, então não entendi pq nessa questão não funcionou assim, é uma exceção?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Pelo que eu vinha entendendo das aulas o JS interpreta os números ou expressões numéricas fora dos parênteses como string, então não entendi pq nessa questão não funcionou assim, é uma exceção?
Oi, tudo bem com você?
Não se trata de uma exceção, mas não é necessário colocar entre parênteses o número que utilizaremos para realizar a operação matemática, pois o JavaScript interpreta corretamente a ordem para fazer os cálculos, avaliando primeiro a divisão e depois a multiplicação. Mas, é imprescindível que a função document.write() tenha parênteses, pois em seu interior será atribuído um parâmetro.
Uma das alternativas apresentadas no exercício traz o seguinte código:
<meta charset="UTF-8">
<script>
document.write:"Eu acertei: " + 15/50*100 + "%" ;
</script>Há um erro de sintaxe no código acima, que ocorre pela presença dos dois pontos ao invés dos parênteses. Portanto, a maneira correta de escrever a função é:
<meta charset="UTF-8">
<script>
document.write("Eu acertei: " + 15/50*100 );
</script>Perceba que não colocamos a operação numérica entre parênteses, reforço, o JavaScript vai realizar a conta na ordem correta e depois concatenar.
O que está entre parênteses é a string , o parêmtetro que atribuimos a document.write(), que por sua vez, contém uma operação numérica que não precisa estar dentro de outro parênteses.
Espero ter ajudado a entender a questão!
Caso surjam dúvidas, estaremos à disposição aqui no fórum.
Bons estudos e a gente se vê!