nicht gleich in Javascript

WBOY
Freigeben: 2023-05-09 12:58:38
Original
1126 Leute haben es durchsucht

Der Ungleichheitsoperator (!=) in JavaScript ist ein häufig verwendeter Operator, der verwendet wird, um zu vergleichen, ob zwei Werte gleich sind. Entspricht dem Gleichheitsoperator (==). Wie sollten wir also im eigentlichen Entwicklungsprozess den Ungleichheitsoperator in JavaScript korrekt verwenden?

Zuerst müssen wir die Definition des Ungleichheitsoperators in JavaScript klären. Der Ungleichheitsoperator wird beim Vergleich zweier Werte verwendet. Gibt „true“ zurück, wenn die beiden Werte nicht gleich sind; gibt „false“ zurück, wenn sie gleich sind. Zwei Werte können unterschiedlichen Typs sein, werden aber zum Vergleich auf denselben Typ umgestellt. Wenn ein Wert null und der andere Wert undefiniert ist, sind sie gleich.

Da JavaScript eine schwach typisierte Sprache ist, kann es zu impliziten Konvertierungen von Datentypen kommen. Daher müssen wir den impliziten Typkonvertierungsproblemen, die bei der Verwendung des Ungleichheitsoperators auftreten können, besondere Aufmerksamkeit widmen. Zum Beispiel:

0 != "" // true
false != 0 // false
false != "" // true

Im ersten Vergleichsausdruck wird die leere Zeichenfolge daher in die Zahl 0 umgewandelt 0 und die leere Zeichenfolge sind nicht gleich. Im zweiten Vergleichsausdruck wird false in die Zahl 0 umgewandelt, sodass 0 und false gleich sind. Im dritten Vergleichsausdruck wird die leere Zeichenfolge in den booleschen Wert „false“ konvertiert, sodass „false“ und die leere Zeichenfolge nicht gleich sind.

Daher sollten wir bei der Verwendung des Ungleichheitsoperators unser Bestes geben, um sicherzustellen, dass die Datentypen der beiden Werte gleich sind, um implizite Typkonvertierungsprobleme zu vermeiden.

Außerdem vergleicht der Ungleichheitsoperator beim Vergleich zweier Objekte deren Referenzadressen und nicht die Eigenschaften der Objekte. Daher sind zwei Objekte nicht gleich, selbst wenn sie dieselben Eigenschaften haben, aber unterschiedliche Objektinstanzen sind. Zum Beispiel:

var obj1 = {

name: "Tom"
Nach dem Login kopieren
Nach dem Login kopieren

};
var obj2 = {

name: "Tom"
Nach dem Login kopieren
Nach dem Login kopieren

};
console.log(obj1 != obj2); // true

Obwohl die Objekte obj1 und obj2 den gleichen Attributnamen haben Und die Attributwerte sind ebenfalls gleich, aber sie sind unterschiedliche Objektinstanzen und ihre Referenzadressen sind ebenfalls unterschiedlich, sodass das vom Ungleichheitsoperator zurückgegebene Ergebnis wahr ist.

Abschließend müssen wir uns einiger potenzieller Leistungsprobleme bei der Verwendung des Ungleichheitsoperators bewusst sein. Da der Ungleichheitsoperator eine implizite Typkonvertierung durchläuft, kann seine Leistung beeinträchtigt werden. Für eine große Anzahl von Vergleichsoperationen können wir den Gleichheitsoperator (===) anstelle des Ungleichheitsoperators verwenden. Dadurch kann das Problem der impliziten Typkonvertierung vermieden und die Leistung des Codes verbessert werden.

Zusammenfassend lässt sich sagen, dass der Ungleichheitsoperator in JavaScript ein häufig verwendeter Operator ist. Wir müssen jedoch auf die impliziten Typkonvertierungsprobleme achten, die bei seiner Verwendung auftreten können, und versuchen, sicherzustellen, dass die Daten der beiden Werte vorliegen ​verglichen Gleicher Typ. Darüber hinaus sollten wir beachten, dass bei der Durchführung einer großen Anzahl von Vergleichsoperationen die Verwendung des Gleichheitsoperators die Leistung des Codes verbessern und implizite Typkonvertierungsprobleme vermeiden kann.

Das obige ist der detaillierte Inhalt vonnicht gleich in Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage