Coerção de Tipos
Parte da seção Fundamentos do Journey de JavaScript da Coddy — lição 22 de 77.
A coerção de tipos (type coercion) no JavaScript é a conversão automática de valores de um tipo de dado para outro. Isso pode acontecer implicitamente em certas operações ou explicitamente quando você usa funções como String(), Number() ou Boolean().
A coerção implícita de tipos frequentemente ocorre quando você usa o operador de igualdade solta == ou quando realiza operações entre tipos diferentes, como adicionar um número a uma string.
Por exemplo:
let result = 5 + "5";
// Armazena "55", porque o número 5 é implicitamente convertido para a string "5" e então concatenadolet result = true == 1;
// Resulta em true, porque o booleano true é convertido implicitamente para o número 1A coerção de tipo explícita pode ser feita usando funções integradas:
String(value)converte um valor para uma string
Number(value)converte um valor em um número
Boolean(value)converte um valor para um booleano
Por exemplo:
let num = "123";
let str = Number(num) + 7; // Armazena 130
console.log(str); let bool = true;
let numBool = Number(bool); // Contém 1Compreender a coerção de tipos é crucial para escrever código JavaScript correto e evitar resultados inesperados.
Desafio
InicianteVocê recebeu um código com várias variáveis de diferentes tipos.
Sua tarefa é realizar a coerção de tipos e imprimir os resultados:
- Converta o número
numpara uma string e armazene-o em uma variável chamadaa. - Converta o booleano
boolpara um número e armazene-o em uma variável chamadab. - Converta a string
strpara um número e armazene-a em uma variável chamadac. - Realize uma coerção de tipo implícita concatenando
numcomstre armazene o resultado em uma variável chamadad.
Use funções de coerção de tipo explícitas (String(), Number()) para as três primeiras tarefas e observe a coerção implícita na última tarefa.
Folha de consulta
A coerção de tipos (type coercion) no JavaScript é a conversão automática de valores de um tipo de dado para outro.
A coerção de tipo implícita acontece automaticamente em operações:
let result = 5 + "5"; // "55" - number converted to string
let result = true == 1; // true - boolean converted to numberA coerção de tipo explícita utiliza funções integradas:
String(value)converte um valor para uma stringNumber(value)converte um valor para um númeroBoolean(value)converte um valor para um booleano
let num = "123";
let str = Number(num) + 7; // 130
let bool = true;
let numBool = Number(bool); // 1Experimente você mesmo
// Variáveis fornecidas
let num = 42
let bool = false
let str = "7"
// Digite seu código abaixo
// Não altere a linha abaixo
console.log(`a = ${a}`)
console.log(`b = ${b}`)
console.log(`c = ${c}`)
console.log(`d = ${d}`)Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Coerção de Tipos7Calculadora de Divisão de Conta
Mensagem de Boas-vindasCalculando a Gorjeta e o Total10FizzBuzz com um Diferencial
Visão Geral do JogoA Função FizzBuzz2Variáveis
NúmerosStringBooleanoConvenções de NomenclaturaVariáveis VaziasRecapitulação - Inicializar VariáveisConstantes5Tomada de Decisão
Estrutura IfIf - ElseRevisão - Calculadora SimplesIf - Else AninhadoEstrutura Switch8Laços de Repetição
Loop ForLoop WhileBreakContinueRecapitulação - FatorialLoop Do WhileLoops Aninhados3Operadores Parte 1
Operadores AritméticosOperador de MóduloAtalhos AritméticosOperadores de ComparaçãoIgualdade Estrita vs Não EstritaRecapitulação - Matemática Simples6E/S Básica
SaídaSaída com VariáveisConversão de Tipos - Parte 1Conversão de Tipos - Parte 2Revisão - Até 120Revisão - Verdadeiro ou Falso