Heim > Web-Frontend > js-Tutorial > Hauptteil

Warum ist „0' in JavaScript gleich „False'?

Patricia Arquette
Freigeben: 2024-11-09 03:24:02
Original
736 Leute haben es durchsucht

Why Does

Gleichheit in JavaScript verstehen: Das Rätsel von „0“ und „Falsch“

In JavaScript wird der Gleichheitsoperator (==) umgewandelt Operanden vor dem Vergleich einem gemeinsamen Typ zuordnen, was zu unerwarteten Ergebnissen führen kann. Ein rätselhaftes Rätsel entsteht, wenn „0“ mit „false“ unter Verwendung von == getestet wird.

Bedenken Sie den folgenden Code:

"0" == false // true
false == "0" // true
Nach dem Login kopieren

Diese Ausdrücke werden als „true“ ausgewertet, was bedeutet, dass „0“ äquivalent zu „false“ ist . Dies widerspricht jedoch dem Verhalten von if("0"), das „ha“ ausgibt:

if("0") console.log("ha") // prints "ha"
Nach dem Login kopieren

Um dieses Rätsel zu lösen, müssen wir uns mit dem Konzept der „wahren“ und „falschen“ Werte befassen in JavaScript. Der ==-Operator erzwingt „0“ in einen booleschen Wert, was falsch ist. Die if-Anweisung interpretiert jedoch nicht leere Zeichenfolgen als wahrheitsgemäße Werte.

Um diese Inkonsistenzen zu vermeiden, ist es wichtig, beim Testen auf Äquivalenz den strikten Gleichheitsoperator (===) zu verwenden. === führt einen direkten Vergleich von Werten ohne Typzwang durch.

"0" === false // false
Nach dem Login kopieren

Die folgende Tabelle zeigt die wahren und falschen Werte in JavaScript:

Value Truthy Falsey
0 Falsey True
"0" Truthy False
"" Falsey True

Bedenken Sie, dass == dazu führen kann Beim Vergleich von Werten verschiedener Typen kann es zu unerwarteten Ergebnissen kommen. Entscheiden Sie sich immer für === für präzise und eindeutige Vergleiche.

Das obige ist der detaillierte Inhalt vonWarum ist „0' in JavaScript gleich „False'?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage