我正在尝试比较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
为什么最后一行是假的?应该是真的。我做错了什么?
答案 0 :(得分:3)
getDate()
方法返回月中的某天。
它是 - 28不是<=
而不是7。
你会知道,如果你试图单独运行fechaTurno.getDate()
,看看它返回的是什么而不是猜测。
答案 1 :(得分:0)
在取消getDate()
alert(fechaActual <= fechaTurno); // true
alert(fechaTurno <=fechaLimite ); //true
答案 2 :(得分:0)
在您的代码中我没有看到任何错误
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);