Warum sind Javascript-negative Zahlen nicht immer wahr oder falsch?
-1 == true; //false
-1 == false //false
-1 ? true : false; //true
Kann jemand die obige Ausgabe erklären? Ich weiß, dass ich das durch einen Vergleich mit 0 umgehen könnte, aber ich bin interessiert. Ich würde erwarten, dass mindestens eine der schlampigen equals-Anweisungen wahr ist, da sie eine implizite Typkonvertierung durchführen, und ich hätte sicher nicht erwartet, dass der Ternär ein völlig anderes Ergebnis liefert.