js关于日期比较大小

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js关于日期比较大小相关的知识,希望对你有一定的参考价值。

for(var i=0;i<shijian.length;i++)
var beginDate= shijian[i];
var endDate=new Date().Format("yyyy-MM-dd hh:mm:ss.S");

var d1 = new Date(beginDate.replace(/\-/g, "\/"));
var d2 = new Date(endDate.replace(/\-/g, "\/"));

if(beginDate!=""&&endDate!=""&&d2 > d1)

alert("不能选择已过期的信息");
return;


这样比较的话在 googol浏览器可以 但是在IE 和 火狐就不行 谁知道原因

参考技术A 可以用用Date.parse()方法
var d1 = Date.parse('2014-09-28 19:00:00'),
    d2 = Date.parse('2014-09-28 2:00:00');
console.log(d1 > d2);

追问

还是不行 IE依然可以

追答IE下把日期格式转成 2014/9/28 这种格式的试试,
实在不行就取new Date(xxx).getTime()进行比较

参考技术B 传入的日期参数为yyyy-mm-dd格式,a大于b返回false,a小于等于b返回true。
function compare_time(a,b)
var arr=a.split("-");
var starttime=new Date(arr[0],arr[1],arr[2]);
var starttimes=starttime.getTime();
var arrs=b.split("-");
var endtime=new Date(arrs[0],arrs[1],arrs[2]);
var endtimes=endtime.getTime();
if(starttimes>endtimes)//开始大于结束

return false;

else
return true;

参考技术C var a = new Date('2014-09-28 19:00:00')
var b = new Date('2014-09-28 19:00:01')
console.log(a.getTime() > b.getTime())

以上是关于js关于日期比较大小的主要内容,如果未能解决你的问题,请参考以下文章

关于js中验证所填时间与当前时间大小的比较

如何用JS比较两个日期时间的大小呢?

delphi日期时间比较大小

js 判断日期 大小

js字符串日期直接比较大小

JS 如何比较时间大小?