Como o operador ==, o operador de comparação (>, <,> =, <=) pode converter objetos em string ou número antes de comparar - para o número, comparar o tamanho do valor; Para string, compare a ordem em que os caracteres aparecem na tabela de codificação. Ao contrário do operador ==, == converterá o objeto Data em string e o comparará, enquanto o operador de comparação converterá todos os objetos, incluindo a data em número e o comparará. As regras para julgamento comparativo são as seguintes:
1. Se houver objetos em ambos os lados do operador, converta -os em número; Se eles não puderem ser convertidos em número, converta -os em string.
2. Após a conversão, se ambos os lados do operador forem a sequência, a comparação de strings será realizada; Caso contrário, desde que um número apareça de um lado, a comparação numérica será realizada.
3. Se a NAN aparecer em ambos os lados do operador, retorne falsa.
4.0 é igual a -0.
experimentar
A cópia do código é a seguinte:
// Em comparação, o objeto de data é convertido em número
var d = new Date ();
var s1 = "Qui 27 de março de 2008 14:57:11 GMT+0800 (CST)";
var s2 = "Qui 27 de março 2099 14:57:11 GMT+0800 (CST)";
var n1 = d.valueof () - 1000;
var n2 = d.valueof () + 1000;
console.log (d> s1); // false, d é convertido em número e esse número é ainda mais convertido em string. É uma comparação de string aqui.
console.log (d> s2); // false
console.log (d> n1); // true
console.log (d> n2); // false
console.log ("11"> 3); // true