O método JavaScript Object.is () verifica se dois valores são o mesmo valor.
A sintaxe do is()
método é:
Object.is(value1, value2)
O is()
método, sendo um método estático, é chamado usando o Object
nome da classe.
is () Parameters
O is()
método inclui:
- valor1 - o primeiro valor a comparar.
- valor2 - o segundo valor a comparar.
Valor de retorno de é ()
- Retorna um
Boolean
indicando se os dois argumentos têm ou não o mesmo valor.
Dois valores são iguais se um dos seguintes for válido:
- ambos
undefined
- ambos
null
- ambos
true
ou ambosfalse
- ambas as strings do mesmo comprimento com os mesmos caracteres na mesma ordem
- ambos o mesmo objeto (significa que ambos os objetos têm a mesma referência)
- ambos os números e
- ambos +0
- ambos -0
- ambos
NaN
- ou ambos diferentes de zero e não
NaN
e ambos têm o mesmo valor
Exemplo: usando Object.is ()
// Objects with the same values console.log(Object.is("JavaScript", "JavaScript")); // true // Objects with different values console.log(Object.is("JavaScript", "javascript")); // false console.log(Object.is((), ())); // false let obj1 = ( a: 1 ); let obj2 = ( a: 1 ); console.log(Object.is(obj1, obj1)); // true console.log(Object.is(obj1, obj2)); // false console.log(Object.is(null, null)); // true // Special Cases console.log(Object.is(0, -0)); // false console.log(Object.is(-0, -0)); // true console.log(Object.is(NaN, 0 / 0)); // true
Resultado
verdadeiro falso falso verdadeiro falso verdadeiro falso verdadeiro verdadeiro
Notas:
- O
==
operador aplica várias coerções a ambos os lados (se não for do mesmo tipo) antes de testar a igualdade, enquantoObject.is()
não o faz. - O
===
operador trata os valores numéricos -0 e +0 como iguais e trataNumber.NaN
como não iguais aNaN
enquantoObject.is()
faz o oposto.
Leitura Recomendada: Objeto Javascript