我正在做一个应用程序,我遇到了这个问题,我认为比较日期会很容易,但事实并非如此。如果日期属于同一年,if
中的条件会很好,但如果该值与下面给出的值相似,则结果不会变为true
false
。那么如何正确比较我的这种日期格式呢?
startDate.toLocaleDateString()的值为12/24/2016
endDate.toLocaleDateString()的值为01/03/2017
if(startDate.toLocaleDateString() > endDate.toLocaleDateString())
{
//do this
}
else
{
//do this
}
答案 0 :(得分:2)
您可以直接比较Date
,因为它使用的EPOCH time具有可比性。
创建一个代表单个时刻的JavaScript
Date
实例。Date
个对象基于时间值,即自UTC时间1970年1月1日以来的毫秒数。
if (startDate > endDate) {
它使用Date#valueOf
valueOf()
方法返回Date对象的原始值。
并返回
1970年1月1日00:00:00 UTC与给定日期之间的毫秒数。
答案 1 :(得分:0)
if (date1.compareTo(date2) > 0) {
System.out.println("Date1 is after Date2");
} else if (date1.compareTo(date2) < 0) {
System.out.println("Date1 is before Date2");
} else if (date1.compareTo(date2) == 0) {
System.out.println("Date1 is equal to Date2");
} else {
System.out.println("How to get here?");
}