5
respostas

E no caso de "18"*"20"?

<script>

    document.write("A idade do Flavio é ");
    document.write("18"*"20");

</script>

E neste caso? qual é a explicação? Obrigado

5 respostas

Oi Andrei! o javascript é espertinho, ele percebe que você está querendo fazer uma operação matemática (usando o operador *) e converte os textos pra números.

abraços!

Pelo que tenho estudado aqui, vale lembrar que se fosse uma adição (+) o JS iria entender como uma concatenação e o resultado seria 1820

Olá Andrei , me parece que você está com duvida do por que o document.write("18"*"20") vai da o resultado = 360 e não 1820 , como foi dito acima pelos nosso colegas o "javascript é espertinho" e caso fosse uma "adição(+) o JS iria concatenar " e isso é exatamente oque ocorre, vou detalhar para facilitar o entendimento no código abaixo :

document.write("18"*"20");//resultado= 360
        pulaLinha();
        document.write("18"/"20");//resultado=0,9
        pulaLinha();
        document.write("18"-"20");//resultado = -2
        pulaLinha();
        document.write("18"+"20");//resultado = 1820
        //para somar os numeros teria que ser 
        document.write(18+20);//resultado = 38

Boa Gente!!!

Interessante, eu não notei que era somente pro caso da soma que concatenava! Por isso a importância de testar sempre variações de código e também a importância do fórum pro curso, acabamos aprendendo além do conteúdo.