1
resposta

Não é possível converter fora do console.log?

Olá, tentei fazer alguns testes e me deparei com algo que me deixou confuso.

Tentei fazer a conversão de String pra Number fora do console.log, mas aparentemente não funcionou. O código não apontou nenhum erro mas o resultado não foi 'Number', conforme esperado:

const texto = "4";

Number(texto)

console.log(typeof texto);

Também tentei fazer a conversão dentro do console.log e desta vez funcionou como gostaria.

const texto = "4";

console.log(typeof Number(texto));

Isso é de fato algo da linguagem? Não é possível fazer uma conversão fora de um console ou isso é feito de uma outra maneira?

1 resposta

Olá Francisco!

O que acontece no primeiro código é que você está convertendo a string "4" para número utilizando a função Number(texto), mas não está armazenando o resultado da conversão em nenhuma variável. Dessa forma, a conversão ocorre, mas o resultado não é utilizado para nenhuma outra operação ou atribuição, então o tipo da variável texto continua sendo uma string.

No segundo código, você faz a mesma conversão utilizando Number(texto), mas agora o resultado da conversão é diretamente passado para o console.log() com typeof, que retorna o tipo do valor passado como argumento. Portanto, nesse caso, o resultado é exibido corretamente como "number".

Para utilizar a conversão em outras partes do código, você pode simplesmente atribuir o resultado da conversão a uma variável, assim o valor convertido será armazenado e poderá ser usado em outras operações. Por exemplo:

const texto = "4";
const numero = Number(texto);

console.log(typeof numero); // Aqui será exibido "number"

Portanto, é possível fazer a conversão fora do console.log() ou de qualquer outra forma que você precisar, desde que o resultado seja armazenado em uma variável ou utilizado em alguma operação.

Espero que isso esclareça a sua dúvida! Se tiver mais perguntas ou precisar de ajuda adicional, é só me avisar. Estou aqui para ajudar!