Curso IT Fundamentos JavaScript 039_Conversão de Tipos
A conversão de tipos é o processo de transformar um tipo de dado em outro tipo de dado. A conversão de tipos pode ser implícita (realizada automaticamente pelo motor JavaScript) ou explícita (conversão manual através de codificação).
Conversão de Tipo Implícita (Coerção de Tipo)
Em algumas operações, o JavaScript converte tipos automaticamente para realizar operações ou comparações.
Exemplo:
let num = 5 + "5";console.log(num); // Saída "55", ao adicionar número e string, o número é convertido em stringConversão de Tipo Explícita
Conversão para String
Função String(): Converte outros tipos em string.
Exemplo:
let num = 123;let str1 = String(num); // Função String(), pode processar `null` ou `undefined`let str2 = num.toString(); // Método toString(), não pode processar `null` ou `undefined`let str3 = num + ""; // Ao adicionar uma string vazia, obtém-se uma string através de conversão implícita de tipoconsole.log(str1); // Saída "123"console.log(str2); // Saída "123"console.log(str3); // Saída "123"Conversão para Número
Função Number(): Converte outros tipos em número.
Exemplo:
let str1 = "123";let str2 = "";let str3 = "aaa";let num1 = Number(str1);let num2 = Number(str2);let num3 = Number(str3);let num4 = +str1;console.log(num1); // Saída 123console.log(num2); // Saída 0console.log(num3); // Saída NaNconsole.log(num3); // Saída 123, se usar o sinal -, a saída será -123Nota: Se a string não puder ser analisada como um número válido, o resultado será NaN (Not a Number).
Funções parseInt() e parseFloat(): Convertem strings em inteiros ou números de ponto flutuante.
Exemplo:
let str = "42";let num = parseInt(str);console.log(num); // Saída 42
let str = "3.14";let num = parseFloat(str);console.log(num); // Saída 3.14Conversão para Booleano
Função Boolean(): Converte outros tipos em valores booleanos.
Exemplo:
let value = "Hello";let bool1 = Boolean(value);let bool2 = !value;console.log(bool1); // Saída true, string não vazia é convertida em trueconsole.log(bool2); // Saída true, usando o NOT lógico para conversão implícita de valor não booleano (!valor é false, usando !! para obter o positivo)Nota: 0, NaN, null, undefined, string vazia, etc. (vazio, inexistente, errôneo) serão convertidos em false, outros valores e objetos serão convertidos em true.