Seperti operator ==, operator perbandingan (>, <,> =, <=) dapat mengubah objek menjadi string atau angka sebelum membandingkan - untuk angka, bandingkan ukuran nilai; Untuk string, bandingkan urutan karakter yang muncul di tabel pengkodean. Berbeda dengan operator ==, == akan mengonversi objek tanggal menjadi string dan kemudian membandingkannya, sedangkan operator perbandingan akan mengonversi semua objek termasuk tanggal menjadi angka dan kemudian membandingkannya. Aturan untuk penilaian komparatif adalah sebagai berikut:
1. Jika ada objek di kedua sisi operator, ubahlah menjadi nomor; Jika mereka tidak dapat dikonversi menjadi nomor, konversinya menjadi string.
2. Setelah konversi, jika kedua sisi operator adalah string, perbandingan string dilakukan; Jika tidak, selama angka muncul di satu sisi, perbandingan numerik dilakukan.
3. Jika Nan muncul di kedua sisi operator, kembalikan salah.
4.0 sama dengan -0.
percobaan
Salinan kode adalah sebagai berikut:
// Sebagai perbandingan, objek tanggal dikonversi menjadi angka
var d = tanggal baru ();
var S1 = "Kamis 27 Mar 2008 14:57:11 GMT+0800 (CST)";
var s2 = "thu 27 Mar 20999 14:57:11 GMT+0800 (CST)";
var n1 = d.valueof () - 1000;
var n2 = d.valueof () + 1000;
console.log (d> s1); // false, d dikonversi menjadi angka, dan angka itu selanjutnya dikonversi menjadi string. Ini adalah perbandingan string di sini.
console.log (d> s2); // false
console.log (d> n1); // true
console.log (d> n2); // false
Console.log ("11"> 3); // Benar