Über die Probleme von Kongruenz und Ungleichheit, Gleichheit und Ungleichheit in JS

Über die Probleme von Kongruenz und Ungleichheit, Gleichheit und Ungleichheit in JS

Kongruent und inkongruent

Der 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.

kongruent

Symbol: ===

let str1="1"
sei str2=1
console.log(str1===str2) //false

Nicht alle gleich

Symbol:! ==

let str1="1"
sei str2=1
console.log(str1!==str2) //wahr

Gleich und ungleich

Die 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.

gleich

Symbol: ==

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

Ungleich

Symbol:! =

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:
  • Erklären Sie kurz den Unterschied zwischen = = (gleich) und = = = (vollkommen gleich) in Javascript
  • Sind die Ereignisobjekte zwischen den JS-Ereignisverarbeitungsfunktionen identisch?
  • Der Unterschied zwischen Gleichheit (==) und Übereinstimmung (===) in JavaScript
  • Anweisungen zur Verwendung des Gleichheitsoperators in JavaScript
  • Lösen Sie das Problem, dass 0,1 + 0,2 in JavaScript nicht gleich 0,3 ist
  • Wie lautet der Code für „ungleich“ in JavaScript?

<<:  Verwendung des Linux-Befehls „userdel“

>>:  So fügen Sie in MySQL 8.0 schnell Spalten hinzu

Artikel empfehlen

Die Rolle von nextTick in Vue und mehrere einfache Anwendungsszenarien

Zweck Verstehen Sie die Rolle von nextTick und me...

Detaillierte Erklärung zur Verwendung mehrerer Timer in CocosCreator

1. setTimeOut Drucken Sie abc nach 3 Sekunden. Nu...

Zusammenfassung der MySQL-Anweisungen

Inhaltsverzeichnis 1. Datenbank USE auswählen 2. ...

So zeigen Sie die Netzwerkroutingtabelle in Ubuntu an

Was sind Routing und Routing-Tabellen in Linux? U...

Die unangemessenen MaxIdleConns von MySQL führen zu kurzen Verbindungen

1 Hintergrund Vor kurzem sind im Online-Geschäft ...

Warum Entwickler Datenbanksperren im Detail verstehen müssen

1.Sperren? 1.1 Was ist ein Schloss? Die eigentlic...

Drei Eigenschaften von Javascript-Objekten

Inhaltsverzeichnis 1. beschreibbar: beschreibbar ...

JS realisiert einfachen Bildkarusselleffekt

In diesem Artikel wird der spezifische JS-Code zu...

Über gutes Design

<br />Auf zehntausend Personen, die die Frag...

VMware Workstation Pro installiert das Win10-Betriebssystem in Reinform

Dieser Artikel beschreibt die Schritte zur Instal...