2009-12-11 16 views
19

Qual è la differenza tra l'operatore! == e l'operatore! =. Si comporta in modo simile all'operatore === dove confronta sia il valore che il tipo?Operatore Javascript! ==

+0

Inversione della domanda: http://stackoverflow.com/questions/359494/javascript-vs-does-it-matter-which-equal-operator-i-use –

risposta

33

sì, è lo stesso operatore come ===, solo per in uguaglianza:

!== - restituisce true se i due operandi non sono identici. Questo operatore non converte i tipi di operandi e restituisce solo false se sono dello stesso tipo e valore. - Wikibooks

+2

+1 - disuguaglianza senza tipo coercizione –

+0

I really pensa che la risposta corretta abbia bisogno della parola coercizione da qualche parte in essa. Anche la conversione ha senso, ma per essere sintetici dovrebbe essere chiaro che si tratta di una conversione implicita. –

10

Sì, !== è la versione rigorosa dell'operatore !=, nessun tipo di coercizione è fatto se gli operandi sono di diverso tipo:

0 != ''   // false, type coercion made 
0 != '0'   // false 
false != '0'  // false 

0 !== ''   // true, no type coercion 
0 !== '0'   // true 
false !== '0'  // true 
6

stavo per inviare this w3schools page, ma stranamente non conteneva questo operatore!

Almeno, lo !== è infatti l'inverso di === che verifica l'uguaglianza di tipo e valore.