Il metodo JavaScript Object.is () controlla se due valori hanno lo stesso valore.
La sintassi del is()
metodo è:
Object.is(value1, value2)
Il is()
metodo, essendo un metodo statico, viene chiamato utilizzando il Object
nome della classe.
is () Parameters
Il is()
metodo comprende:
- value1 - Il primo valore da confrontare.
- value2 - Il secondo valore da confrontare.
Valore restituito da is ()
- Restituisce un che
Boolean
indica se i due argomenti hanno o meno lo stesso valore.
Due valori sono gli stessi se vale uno dei seguenti:
- tutti e due
undefined
- tutti e due
null
- entrambi
true
o entrambifalse
- entrambe le stringhe della stessa lunghezza con gli stessi caratteri nello stesso ordine
- entrambi lo stesso oggetto (significa che entrambi gli oggetti hanno lo stesso riferimento)
- entrambi i numeri e
- entrambi +0
- entrambi -0
- tutti e due
NaN
- o entrambi diversi da zero e entrambi no
NaN
ed entrambi hanno lo stesso valore
Esempio: utilizzo di 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
Produzione
vero falso falso vero falso vero falso vero vero
Appunti:
- L'
==
operatore applica varie coercizioni a entrambe le parti (se non allo stesso tipo) prima di verificare l'uguaglianza, mentreObject.is()
non lo fa. - L'
===
operatore considera i valori numerici -0 e +0 come uguali e trattaNumber.NaN
come non uguale aNaN
mentreObject.is()
fa il contrario.
Letture consigliate: oggetto Javascript