javascript的日期比较错误

Date comparison error with javascript

本文关键字:错误 比较 日期 javascript      更新时间:2023-09-26

我正在尝试比较javascript中的日期。为什么会发生这种情况?

var strDate = "28/06/2014";
var arrayDate = strDate.split("/");
var fechaTurno = new Date(arrayDate[2], arrayDate[1] - 1, arrayDate[0]);
var fechaActual = new Date();
var fechaLimite = new Date();
fechaLimite.setDate(fechaActual.getDate() + 10);
console.log(fechaTurno); //  Date {Sat Jun 28 2014 00:00:00 GMT-0300}
console.log(fechaActual); //  Date {Fri Jun 27 2014 08:36:24 GMT-0300}
console.log(fechaLimite); //  Date {Mon Jul 07 2014 08:36:24 GMT-0300}
alert(fechaActual.getDate() <= fechaTurno.getDate()); // true
alert(fechaTurno.getDate() <= fechaLimite.getDate()); // false

为什么最后一行是假的?应该是真的。我做错了什么?

getDate()方法返回该月的第几天。

就是这样- 28不是<=比7

你会知道,如果你试图单独运行fechaTurno.getDate(),看看它返回什么,而不是猜测。

在你的代码中我没有看到任何错误

getDate返回日期

alert(fechaActual.getDate() <= fechaTurno.getDate()); // true  because 27 < 28 
alert(fechaTurno.getDate() <= fechaLimite.getDate()); // false because 28 > 7

要比较整个日期,请键入

alert(fechaActual <= fechaTurno); 
alert(fechaTurno <= fechaLimite);

排除getDate()后再试

alert(fechaActual <= fechaTurno); // true
alert(fechaTurno <=fechaLimite ); //true