Pular para o conteúdo principal

Qual a diferença entre o operador de comparação == e === em JavaScript?

 Em JavaScript, os operadores == (igualdade solta) e === (igualdade estrita) servem para comparar valores, mas funcionam de maneiras diferentes.

  • == (igualdade solta):
    Compara os valores após converter os tipos automaticamente (coerção de tipo). Ou seja, se os tipos forem diferentes, o JavaScript tenta transformá-los para depois comparar.
    Exemplo:

5 == "5" // true (string "5" é convertida para número) 0 == false // true null == undefined // true
  • === (igualdade estrita):
    Compara os valores sem conversão de tipo. Para ser true, os valores precisam ser iguais e do mesmo tipo.
    Exemplo:

5 === "5" // false (número ≠ string) 0 === false // false (número ≠ booleano) null === undefined // false 5 === 5 // true

🔑 Em resumo:

  • == → verifica apenas o valor, permitindo conversão implícita.

  • === → verifica valor e tipo, sendo mais previsível e seguro.

👉 Boa prática: prefira sempre ===, pois evita resultados inesperados causados pela coerção automática.

Exemplo prático:

let a = "10"; let b = 10; console.log(a == b); // true (conversão de "10" → 10) console.log(a === b); // false (string ≠ número)

Assim, usar === ajuda a escrever códigos mais claros e menos propensos a erros. ✅


Fonte:  perguntas e respostas para entrevistas de JavaScript, criado por Pratik Bandal
Fonte: Inteligência artificial Chatgpt

Comentários

Postagens mais visitadas deste blog

Principais áreas da Inteligência Artificial: Machine Learning, NLP, Visão Computacional e mais

  Principais áreas da Inteligência Artificial: Machine Learning, NLP, Visão Computacional e mais Introdução: A Inteligência Artificial (IA) está transformando o mundo em que vivemos. Do assistente virtual no seu celular aos sistemas de recomendação de filmes e produtos, a IA está presente em diversas áreas do nosso dia a dia. Mas você sabia que a IA é dividida em várias subáreas com aplicações específicas? Neste post, vamos conhecer as principais áreas da Inteligência Artificial, como Machine Learning , Processamento de Linguagem Natural (NLP) , Visão Computacional e muito mais. Vamos lá? 1. Machine Learning (Aprendizado de Máquina) O Machine Learning é uma das áreas mais populares da IA. Ele permite que os computadores aprendam a partir de dados e façam previsões ou decisões sem serem explicitamente programados para isso. Exemplos de uso: Previsão de preços (ações, imóveis, etc.) Sistemas de recomendação (Netflix, Spotify) Diagnósticos médicos baseados em dados 2. NLP...

Burnout na Área de Tecnologia da Informação: Um Mal Invisível

  Burnout na Área de Tecnologia da Informação: Um Mal Invisível Introdução A área de Tecnologia da Informação é conhecida por seu dinamismo, inovação constante e alta demanda por produtividade. Porém, por trás dos avanços e das soluções digitais, muitos profissionais enfrentam um inimigo silencioso: o burnout . Neste post, vamos entender o que é essa síndrome, por que ela é tão comum em TI e como é possível preveni-la. O Que É Burnout? A Síndrome de Burnout é um distúrbio emocional causado por estresse crônico no ambiente de trabalho . Reconhecida pela Organização Mundial da Saúde (OMS), ela afeta especialmente profissionais que lidam com pressão constante, metas agressivas e carga de trabalho excessiva — uma realidade frequente na TI. Por Que o Burnout é Comum em TI? Alguns fatores explicam essa relação: Carga Horária Exagerada : Projetos com prazos apertados fazem com que profissionais fiquem horas extras na frente do computador. Alta Pressão por Resultados : A cobran...

Explique a diferença fundamental entre var e let em termos de escopo

  var : Escopo de Função Quando você declara uma variável usando var , ela tem escopo de função . Isso significa que a variável é acessível em qualquer lugar dentro da função em que foi declarada, independentemente de blocos como if ou for . Mesmo que a declaração esteja dentro de um bloco, ela "vaza" para o escopo da função inteira. Por exemplo, se você declarar uma variável var dentro de um if dentro de uma função, ela ainda poderá ser acessada e modificada fora desse if , mas dentro da mesma função. Esse comportamento pode levar a surpresas e dificultar a depuração, especialmente em funções longas, já que uma variável pode ser alterada em um local distante de sua declaração inicial. JavaScript function exemploVar ( ) { if ( true ) { var numero = 10 ; console .log(numero); // Saída: 10 } console .log(numero); // Saída: 10 } let : Escopo de Bloco Em contraste, let foi introduzido no ECMAScript 2015 (ES6) para resolver as peculiaridades do var . Uma variá...