4
respostas

E o resultado é... Concatenação e Priorização de Operações

Boa tarde, comunidade Alura Espero que todos estejam bem!!

Para esta atividade vale a pena considerar a questão da Priorização de Operações, primeiro teremos a soma que está em () e em seguida o navevador vai ler o código da esqueda para direita fazendo assim a concatenação de "A" e "B" que são do tipo string em seguida vai converter o numeral 20 para string e concatenar com "AB" tendo com resultado "AB20".. e vai seguindo a lógica até obter o resultado AB2010C15D exibido no navegador.

<meta charset="UTF-8">
<script>
    document.write("A" + "B" + 20 + 10 + "C" + (5 + 10) + "D");
</script>

Abs,

4 respostas

Oi Taiuã!

É esse o raciocínio mesmo! Parabéns :)

E, seguindo essa lógica, no final obteremos "AB2010C15D" como resultado.

Continue sempre praticando. Qualquer coisa é só chamar.

Abraços e bons estudos!

Mas se fosse:

document.write("a" + "b" + 20 * 10)

Ele calcula pq, mesmo sem os parênteses, as operações de multiplicação e divisão tem prioridade sobre o string??

Interessante isso. Ele interpreta o ' + ' como uma concatenação, visto que a primeira coisa do parâmetro é uma string. Porém, o ' * ' não tem como concatenar, então o JS, sozinho, sabe que tem que realizar a operação matemática? É isso?

É isso mesmo, pessoal!

A multiplicação e a divisão sempre são realizadas primeiro, por isso document.write("a" + "b " + 20 * 10); resulta em ab 200.

Parabéns por essa observação!

Continuem sempre praticando. Qualquer dúvida estamos por aqui :)