Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Porque o número de acertos não virou String? No caso o número 15

<meta charset="UTF-8">
<script>
    document.write("Eu acertei: " + 15/50*100 + "%" );
</script>
4 respostas

Olá Vinicius,

Não entendi muito bem sua dúvida... Strings são usadas para serem exibidas como "texto".

Nesse seu exemplo, você está realizando uma soma com números e está correto... Você queria transformar o 15 em "texto" e tentar realizar a soma?

Porque não foi usado os parenteses na conta para saber a porcentagem?

Pelo que entendi quando é um concatenação de String com número é String

document.write("Eu acertei: " + 15/50*100 + "%" );

O 15 não deveria virar String?

<meta charset="UTF-8">
<script>
    document.write("Eu acertei: " + 15/50*100 + "%" );
</script>

Hummm entendi...

Isso pode bugar um pouco a cabeça, mas o Javascript ele reconhece que o que está dentro da concatenação é um cálculo, então antes de ele transformar tudo em string, ele primeiro realiza o calculo e depois exibe o resultado como se fosse uma string.

É como se tivesse um "parenteses" na sintaxe, para dizer por exemplo: "Devo somar primeiro pra depois exibir o resultado como se fosse string":

document.write("Eu acertei: " + (15/50*100) + "%" );

O mais certo para esse exemplo, seria separar isso em variáveis, pois dessa maneira você pode usar o sinal de "+" do calculo sem precisar se preocupar com o "+" da concatenação...

<meta charset="UTF-8">
<script>
    var soma = (15/50*100);
    document.write("Eu acertei: " + soma + "%" );
</script>

Espero que tenha te ajudado Vinicius, Abs!!

solução!

Olá Vinicius,

Nesse caso não há necessidade de parênteses porque a precedência da operação será primeiramente realizar qualquer multiplicação ou divisão e só após isso, somar, subtrair ou concatenar.

Agora, se isso te deixar confuso, o Júlio Rosseti deu um ótimo conselho: separar em variáveis o que é soma do que é concatenação.