Kongruent und inkongruentDer Vergleich der Operanden auf beiden Seiten des Symbols ist derselbe wie beim Operator. Wenn die Operanden beispielsweise gleich sind, wird „true“ zurückgegeben, andernfalls „false“. Die Gleichheits- und Ungleichheitsoperatoren konvertieren die Operanden beim Vergleichen auf Gleichheit nicht, d. h., sie vergleichen direkt auf Gleichheit oder Ungleichheit ohne Konvertierung. kongruentSymbol: === let str1="1" sei str2=1 console.log(str1===str2) //false Nicht alle gleichSymbol:! == let str1="1" sei str2=1 console.log(str1!==str2) //wahr Gleich und ungleichDie Gleichheits- und Ungleichheitsoperatoren vergleichen ebenfalls zwei Operanden. Beispielsweise gibt der Gleichheitsoperator „true“ zurück, wenn die beiden Operanden gleich sind, andernfalls „false“. Der Unterschied zwischen den Gleichheits- und Ungleichheitsoperatoren besteht jedoch darin, dass die Gleichheits- und Ungleichheitsoperatoren zuerst eine erzwungene Typkonvertierung der Operanden durchführen und dann die konvertierten Operanden vergleichen. gleichSymbol: == let str1="1" sei str2=1 console.log(str1==str2) //wahr console.log(str1===str2) //false lass Flagge = wahr sei num=1 console.log(flag==num) //wahr console.log(flag===num) //falsch UngleichSymbol:! = let str1="1" sei str2=1 let str3="hallo" console.log(str1!=str2) //false Erst Typkonvertierung, dann Vergleich console.log(str1!==str2) //true Bei der Gleichheitsoperation sind die beiden Operanden ohne erzwungene Typkonvertierung nicht unbedingt gleich. console.log(str2!=str3) //wahr console.log(str2!==str3) //wahr Für die Typkonvertierung von Operanden für Gleichheits- und Ungleichheitsoperatoren gelten folgende Regeln: Boolesche Werte werden zum Vergleich direkt in numerische Werte umgewandelt: false: 0; true: 1 Wenn eine Zeichenfolge auf eine Zahl trifft, wird sie in eine Zahl umgewandelt und dann verglichen. Bei Objekten wird verglichen, ob es sich bei beiden Operanden um dasselbe Objekt handelt, sofern es sich um Objekte handelt. Wenn sich die beiden Operanden auf dasselbe Objekt beziehen, wird „true“ zurückgegeben, andernfalls „false“. Wenn einer der Operanden ein Objekt ist, wird die Methode valueOf aufgerufen, um den ursprünglichen Wert abzurufen. Anschließend wird der Vergleich durchgeführt (gemäß den oben genannten Regeln). const p = neues Objekt('zhangsan') // entspricht const p = neuer String('zhangsan') console.log(p.valueOf() == 'zhangsan') //wahr console.log(p == 'zhangsan') //wahr const p1={name:'zhangsan'} sei p2=p1 console.log(p1==p2) //wahr p2={} console.log(p1==p2) //falsch Für „null“ und „undefiniert“ gilt: „null“ und „undefiniert“ sind gleich, aber sie werden nicht erzwungen, egal, mit wem sie verglichen werden. console.log(null==undefiniert) //wahr console.log(null===undefined) //false Wenn alle gleich sind, ist das Rückgabeergebnis immer noch false Bei NaN ist NaN nicht gleich jedem Wert, auch nicht sich selbst. Ein Vergleich mit NaN-Operatoren gibt „False“ zurück, wenn sie gleich sind, und „True“, wenn sie ungleich sind. console.log(NaN==NaN) //falsch konsole.log(NaN!='') //wahr console.log(NaN!=1) //wahr console.log(NaN!={}) //wahr Dies ist das Ende dieses Artikels über Kongruenz und Ungleichheit, Gleichheit und Ungleichheit in JS. Weitere relevante JS-Inhalte über Kongruenz und Ungleichheit, Gleichheit und Ungleichheit finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Verwendung des Linux-Befehls „userdel“
>>: So fügen Sie in MySQL 8.0 schnell Spalten hinzu
Vorwort Zuerst wollte ich es mit wget auf CentOS8...
Detailliertes Beispiel zum Entfernen doppelter Da...
# Installations-Daemon-Konfiguration für Redis un...
Gespeicherte Prozeduren 1. Erstellen Sie eine ges...
Was ist SSH? Administratoren können sich remote a...
Möglicherweise ist Ihnen aufgefallen, dass auf die...
Wenn Sie Eingabe und Bild in dieselbe Zeile setzen...
Wenn wir eine Webseite erstellen, möchten wir man...
Installationsschritte 1. Redis installieren Laden...
In diesem Artikel wird der spezifische JavaScript...
1 Hintergrund Vor kurzem sind im Online-Geschäft ...
Gestern wollte ich a:visited verwenden, um die Fa...
Einführung Im vorherigen Artikel wurden die einfa...
Daten in MySQL-Datenbank einfügen. Bisher häufig ...
Die neue offizielle Website ist online, aber die ...