1
resposta

Experimento com o exercício

No exemplo a seguir, veremos o uso de String dentro da variável e como isso a afeta

<meta charset="UTF-8">

<script>

    var IDADE1 = 10;
    var IDADE2 = "20";
    var IDADE3 = 12;

    document.write("A média das idades é <br>");
    document.write( (IDADE1 + IDADE2 + IDADE3) / 3);

</script>

Neste caso temos uma Concatenação dos números 10, 20, 12 simultaneamente o que retornará o valor 102012 que ao ser dividido por 3 retornará o valor de 34004 no navegador

já nesse segundo exemplo:

<meta charset="UTF-8">

<script>

    var IDADE1 = 10;
    var IDADE2 = "20";
    var IDADE3 = 12;

    document.write("A média das idades é <br>");
    document.write( (IDADE1 + IDADE3 + IDADE2) / 3);

</script>

Ao ser levado ao final, o valor que contem a String (IDADE2) teremos a soma e só após a Concatenação, desta forma

10 + 12 = 22 => 22 + "20" = 2220

ao ser dividido por 3 retornará o valor de 740 no navegador

1 resposta

Opa !! Eu estava com dificuldade pra entender, mas o professor nas aulas anteriores já havia comentado essa questão. Fiz e refiz até que entendi o que o acontece.

Primeiro é que o js não entende que nós queremos SOMAR os números - já que tem uma STING BEM NO MEIO da soma - então o que ele faz ? Ele faz a CONCATENAÇÃO de TODOS os NÚMEROS QUE ESTÃO ENTRE PARENTESES no caso 10+"20"+12 = 102012.

Depois, ele procura o que está fora dos parênteses , que é o "/3", logo ele entende que o número 102012 deve ser dividido por "3" que dá o resultado de 34004. Espero ter ajudado.