Em JavaScript, uma variável pode armazenar diferentes tipos ...

Próximas questões
Com base no mesmo assunto
Q1069989 Programação

Em JavaScript, uma variável pode armazenar diferentes tipos de dado e também ter seu tipo de dado modificado durante a execução do código.

Nesse contexto, considere a expressão a seguir.


var x = "5" + 7;


Para retornar o valor da variável x em JavaScript, utiliza-se a função x.valueOf(). Já para retornar seu tipo, utiliza-se o operador typeof x.

Considerando a expressão dada, a chamada à função x.valueOf() e ao operador typeof x retornam, respectivamente,

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: A - 57, string.

Para resolver essa questão, é necessário entender como o JavaScript trata operações que envolvem diferentes tipos de dados. No JavaScript, quando você usa o operador de adição (+) com uma string e um número, o número é convertido para string e os dois são concatenados como se fossem texto. Portanto, ao realizar a operação var x = "5" + 7;, temos uma concatenação entre a string "5" e a conversão do número 7 em string, resultando em "57".

A função x.valueOf() é utilizada para retornar o valor primitivo de um objeto em JavaScript. Nesse caso, como 'x' é uma string que contém "57", a chamada x.valueOf() também irá retornar "57".

Quanto ao operador typeof, ele é usado para determinar o tipo de uma variável ou expressão. Ao utilizar typeof x, o retorno será a string "string", porque o valor de 'x' é uma string.

Assim, o valor retornado por x.valueOf() é "57" e o tipo da variável 'x' é string, justificando a alternativa A como a correta.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

isso aí pessoal, todo mundo acertando essa kkkk

Javascript é uma liguagem de "tipagem fraca", aceita operações entre tipos diferentes, fazendo as devidas conversões. No caso da operação de adição (+) entre inteiro e string, prevalece o tipo "string"; lembrando que + entre strings corresponde à concatenação.

Por: @Somente Only na Q567868

js: string + numero = string

php: string + numero = numero

a-

<!DOCTYPE html>

<html>

<body>

<p>Click the button to return the primitive value of the string object.</p>

<button onclick="myFunction()">Try it</button>

<p id="lectern"></p>

<script>

function myFunction() {

var x = "5" + 7;

 var res = x.valueOf();

 document.getElementById("lectern").innerHTML = res;

}

</script>

</body>

</html>

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo