-
x3[0] == 1 -> true, pois o primeiro elemento to array é 1.
x1 == x2 -> true, porque o == não leva em consideração o tipo do dado.
x1 === x2 -> false, porque o === leva em consideração o tipo do dado.
true == x1 - > false - Eu não sei por quê! rsrsrs
true == x3[0] -> true - acredito que seja porque qualquer valor comparado com um índice deve ser verdadeiro... me corrijam se estiver errado xD
-
x3[0] == 1 -> true, pois o primeiro elemento to array é 1.
x1 == x2 -> true, porque o == realiza conversão automatica de string para int .
x1 === x2 -> false, porque o === realiza comparação estrita impedindo que ocorra algum tipo de conversão.
true == x1 - > false - porque true é tipo booleano e 1 é tipo de dado integer
true == x3[0] -> true - realiza conversão de 1 para true (true =1 false=0)
-
As 3 primeiras explicações da @tatiana:
x3[0] == 1 -> true, pois o primeiro elemento do array é 1.
x1 == x2 -> true, porque o == realiza conversão automática de string para int .
x1 === x2 -> false, porque o === realiza comparação estrita impedindo que ocorra algum tipo de conversão.
Corrigindo as 2 últimas:
true == x1 - > false - porque true é convertido para 1 que é diferente de 16
true == x3[0] -> true - realiza conversão de true para 1 que é igual ao primeiro elemento de x3
-
✅Gabarito(D)
Sei que já tem alguns comentários bons, mas achei conveniente deixar mais claro a definição do operador "===".
Operador "==="
O uso do operador "===" retorna VERDADEIRO caso os operandos sejam iguais e do mesmo tipo. No caso acima os operandos são iguais mais de tipos diferentes. Um é do tipo Number e outro do tipo String.
Fonte: Q1116000
Tipos de Dados
São seis tipos de dados chamados primitivos: boolean, null, undefined, number, string, symbol
Fonte: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide/Grammar_and_types
-
Força!
var x1 = 16;
var x2 = "16";
var x3 = [1,2,3];
x3[0] == 1 -> true, pois o primeiro elemento to array é 1.
x1 == x2 -> true, porque o == realiza comparação apenas de valor.
x1 === x2 -> false, porque o === realiza comparação de valor e tipos.
true == x1 - > false - porque o true e booleano e x1 é igual a 16.
true == x3[0] -> true - realiza true e a primeira posição do array é 1. Sabemos que quando é 1 => (true =1 false=0)
-
o Leandro Henrique foi perfeito na resposta!!
Cuidado, isso é interessantíssimo: na comparação com == para tipos primitivos diferentes, dos tipos number, boolean ou String, o JS vai tentar converter as variáveis para number. No caso da letra D: true == 16 vai resultar em 1 == 16, o que dará false!
Obs.: Quem tiver o livro "Estrutura de Dados e Algoritmos com JavaScript" da Loiane Groner, 2ª Edição, dá uma olhada no capítulo 1, na página 39, que ela explica bem direitinho essa parte :-)