34 Stimmen

Wann sollten Sie === vs ==, !== vs !=, etc. in Javascript verwenden?

Mögliches Duplikat:
Javascript === vs == : Ist es wichtig, welchen "Gleich"-Operator ich verwende?

Was sind die Unterschiede zwischen === gegen == y !== gegen != ?

Wann sollten Sie die einzelnen Instrumente einsetzen?

4 Stimmen

Dies ist ein Duplikat von etwa 1000 Fragen

1 Stimmen

Können Sie einen Link zu diesen anderen Fragen angeben? Ich schaue immer zuerst nach, offensichtlich waren die Titel nicht klar genug, um sie leicht zu finden. Vielleicht hilft es den Leuten, die diese Frage gestellt haben, in die richtige Richtung zu lenken, falls sie nicht genau danach gesucht haben.

1 Stimmen

Genau mein Gedanke. Hier ist eine: stackoverflow.com/questions/359494/javascript-vs

40voto

Matthew Vines Punkte 26593

\=== ist der Identitätsoperator und wird verwendet, um zu prüfen, ob Wert und Typ gleich sind.

Also

"3" == 3 // true
"3" === 3 // false
1 == true // true
1 === true // false
"1" == true // true
"1" === true // false

Wenn Sie also darauf achten, dass Wert und Typ gleich oder nicht gleich sind, verwenden Sie die Identitätsoperatoren === oder !==

0 Stimmen

"1" == true was? Ich dachte, ich kenne diese Regeln. Danke für den Hinweis.

0 Stimmen

@KissKoppány wenn du verwirrt bist, liegt das daran, dass 1 und 0 boolesche Operatoren sind. == führt eine Typumwandlung durch, also '1' == 1 == wahr, '0' == 0 == falsch. === führt KEINE Typumwandlung durch. Im Allgemeinen ist es besser, === zu verwenden, es sei denn, Sie erwarten, dass Ihre Variablen häufig den Typ wechseln, was (zumindest für mich) bizarr ist.

9voto

Joel Coehoorn Punkte 377088

Das "Normale" == Operatoren in Javascript führen Typ-Koercion, und versuchen ihr Bestes, um Dinge wie eine Zeichenfolge als Zahl oder ein Objekt als eine Zeichenfolge, wo erforderlich zu tun. Die längeren === Operatoren werden no Typenzwang, sondern einen strengen Vergleich innerhalb des Typs durchführen.

5voto

schnaader Punkte 47961

=== y !== sind identisch mit == y != , sondern prüfen zusätzlich die Variablentypen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X