Tendo em vista a Linguagem de Programação Javascript, assina...

Próximas questões
Com base no mesmo assunto
Q2172185 Programação
Tendo em vista a Linguagem de Programação Javascript, assinale a alternativa que descreve corretamente a diferença entre o uso de "==" e "===".
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: B - O operador "==" compara apenas valores, enquanto o operador "===" compara valores e tipos de dados.

Ao trabalhar com a linguagem de programação JavaScript, é fundamental entender as diferenças entre os operadores de comparação "==" (igualdade abstrata) e "===" (igualdade estrita). O operador "==" compara a igualdade entre dois valores, mas permite a conversão de tipos (coerção de tipo) caso eles não sejam do mesmo tipo, o que pode levar a resultados não intencionais. Por outro lado, o operador "===" é mais rigoroso e compara tanto o valor quanto o tipo de dados, não realizando conversão de tipos.

Por exemplo, se compararmos a string '10' com o número 10 utilizando o operador "==", a expressão seria verdadeira ('10' == 10), porque o JavaScript converte a string '10' para o número 10 antes de fazer a comparação. No entanto, usando o operador "===", a mesma comparação resultaria em falso ('10' === 10), pois embora os valores sejam iguais, seus tipos são diferentes (string e número, respectivamente).

Esse conhecimento é crucial para evitar bugs e comportamentos inesperados em seu código. Por isso, a alternativa B é a correta, pois ela descreve com precisão a funcionalidade e o comportamento dos dois operadores de comparação em JavaScript.

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

b-

The equality (==) operator checks whether its two operands are equal, returning a Boolean result. Unlike the strict equality operator, it attempts to convert and compare operands that are of different types.

console.log(1 == 1);

// Expected output: true

console.log('hello' == 'hello');

// Expected output: true

console.log('1' == 1);

// Expected output: true

console.log(0 == false);

// Expected output: true

The strict equality (===) operator checks whether its two operands are equal, returning a Boolean result. Unlike the equality operator, the strict equality operator always considers operands of different types to be different.

console.log(1 === 1);

// Expected output: true

console.log('hello' === 'hello');

// Expected output: true

console.log('1' === 1);

// Expected output: false

console.log(0 === false);

// Expected output: false

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Strict_equality

Clique para visualizar este comentário

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