Als ichWarum ist null == 0 gibt false aus, da beide falsche Werte sind?
null == 0
laufen oder
0 == null
beide Ausgänge falsch, auch wenn beide Falsey Werte sind, warum?
Als ichWarum ist null == 0 gibt false aus, da beide falsche Werte sind?
null == 0
laufen oder
0 == null
beide Ausgänge falsch, auch wenn beide Falsey Werte sind, warum?
== prüft nicht nur für Werte, sondern auch für die Typen (und nicht in der gleichen Art und Weise, die ===) Sie weitere Details hier sehen können: The Abstract Equality Comparison Algorithm
Wenn Sie verwenden === auch immer noch nur falsch –
== überprüft nur den Wert === nur wird der Datentyp –
nein, Sie können hier überprüfen, und Sie werden sehen, dass mehrere Typ-Check von der == Operator: http durchgeführt werden : //es5.github.io/#x11.9.3 – mdcarter
Warum '1 == 2' Ausgang falsch, obwohl sie beide truthy Werte sind? – JJJ
@Juhana Weil ihr Typ der gleiche ist und nach Spezifikation http://www.ecma-international.org/ecma-262/6.0/#sec-abstract-equality-comparison, (Klausel 3) wenn der Typ derselbe ist, dann strikte Gleichheit wird ausgeführt – gurvinder372
_Wenn ein Objekt mit einer Zahl oder einer Zeichenfolge verglichen wird, versucht JavaScript, den Standardwert für das Objekt zurückzugeben. Operatoren versuchen, das Objekt mit den Methoden valueOf und toString der Objekte in einen primitiven Wert, einen String- oder Zahlenwert zu konvertieren. Wenn dieser Versuch, das Objekt zu konvertieren, fehlschlägt, wird ein Laufzeitfehler generiert. _ Wie _Bergi_ sagte, sind _Null- und 'Undefined'-Typen genau gleich und abstrakt. [Ref] (https: // developer .mozilla.org/de-DE/docs/Web/JavaScript/Referenz/Operatoren/Vergleichsoperatoren) _ – Rayon