我有一个场景,我必须比较两个DateTime对象
启动DateTime和End DateTime
现在我正在尝试使用“>”在许多网站和博客中建议的简单代码或“<”符号。 例如:if((Date.parse(startdate))>(Date.parse(enddate))) { alert(“请输入enddate大于startdate”); }
如果DateTime在同一个月,这可以正常工作。即使在输入有效日期时间范围(例如开始日期时间为2011年2月20日,结束日期时间为2011年3月3日)之后,我仍然会高于警报,这实际上是错误的。
任何人都可以帮忙,弄清楚什么是错的,或者任何能提供JS功能来比较两个DateTime对象的人。
感谢。
答案 0 :(得分:1)
您应该使用“.getTime()”来获取时间戳整数,然后比较它们。
if(Date.parse(startdate).getTime() > Date.parse(enddate).getTime())
{
alert("Please enter enddate greater than startdate");
}
我的猜测是,当你尝试比较对象本身时,只会按字典顺序对它们的字符串表示进行比较(尽管不是100%肯定)。