Wie der == Operator kann der Vergleichsoperator (>, <,> =, <=) Objekte vor dem Vergleich in eine Zeichenfolge oder Zahl konvertieren - für die Zahl der Wertgröße des Wertes vergleichen; Vergleichen Sie für String die Reihenfolge, in der Zeichen in der Codierungstabelle angezeigt werden. Im Gegensatz zum Operator == konvertiert == das Datumsobjekt in eine Zeichenfolge und vergleichen Sie es, während der Vergleichsoperator alle Objekte einschließlich Datum in die Nummer umwandelt und dann vergleichen kann. Die Regeln für das vergleichende Urteilsvermögen sind wie folgt:
1. Wenn sich Objekte auf beiden Seiten des Bedieners befinden, wandeln Sie sie in die Anzahl. Wenn sie nicht in die Zahl konvertiert werden können, konvertieren Sie sie in die String.
2. Nach der Konvertierung wird bei beiden Seiten des Bedieners String -Vergleich durchgeführt. Andernfalls wird numerischer Vergleich durchgeführt, solange eine Zahl auf einer Seite erscheint.
3. Wenn Nan auf beiden Seiten des Operators erscheint, geben Sie Falsch zurück.
4.0 entspricht -0.
Experiment
Die Codekopie lautet wie folgt:
// Im Vergleich wird das Datumsobjekt in die Nummer konvertiert
var d = neues Datum ();
var s1 = "Thu 27. März 2008 14:57:11 GMT+0800 (CST)";
var s2 = "Thu 27. März 2099 14:57:11 GMT+0800 (CST)";
var n1 = d. -valueof () - 1000;
var n2 = d.Valueof () + 1000;
console.log (d> s1); // false, d wird in die Zahl konvertiert und diese Zahl wird weiter in die String konvertiert. Es ist hier ein String -Vergleich.
console.log (d> s2); // false
console.log (d> n1); // true
console.log (d> n2); // false
console.log ("11"> 3); // true