JS如何实现时间的比较

将当前的时间mydate -------------->var mydate = new Date();
与json中取到的时间ulistJosn[i].endtime做比较
endtime 的格式是"2015-07-25 16:47"
madate的格式是Mon Jul 27 2015 11:51:43 GMT+0800 (中国标准时间)
两个怎么做比较?????????????????????

字符串要转为时间对象后进行对比

 var s="2015-07-25 16:47";
s=s.replace(/-/g,'/');
s=new Date(s);
alert(d.getTime()>new Date().getTime())

写个函数:

function getDateInterval(startDate, endDate){
    if(startDate == '' || endDate == ''){
        alert('时间不能为空');
        return false;
    }
    if(startDate.length != 8 || endDate.length != 8){
        alert('时间格式不正确');
        return false;
    }
    startDate = startDate.substr(0, 4)+'/'+startDate.substr(4,2)+'/'+startDate.substr(6,2);
    endDate = endDate.substr(0, 4)+'/'+endDate.substr(4,2)+'/'+endDate.substr(6,2);
    var startDate = new Date(startDate);
    var endDate = new Date(endDate);
    var interval = (endDate - startDate)/(3600*24*1000);
    return interval;
}

使用:

 var interval = getDateInterval(startDate, endDate);
                if(interval > 365){
                    alert('日期范围不能超过一年');
                    return;
                }

我提供的是一个思路,具体如何实现,要看你的具体业务需求,对函数可以进行修改。

/**
 * 计算两个日期相差的天数
 * @param beginDate 【YYYYMMDD】
 * @param endDate  【YYYYMMDD】
 * @return Integer 
 * @author linbingwen
 * @since 2015年7月21日
 */
public static Integer diffDate(Integer beginDate,Integer endDate){                      
        Calendar theCa1= Calendar.getInstance();  
        Calendar theCa2= Calendar.getInstance();  
        theCa1.setTime(parseDate(beginDate));  
        theCa2.setTime(parseDate(endDate));      
        long between_days=(theCa2.getTimeInMillis()-theCa1.getTimeInMillis())/(1000*3600*24);          
        return Integer.parseInt(String.valueOf(between_days));  
}

转换成毫秒数进行比较就行

先得转换成日期类型,然后再进行比较

var s="2015-07-25 16:47";
s=s.replace(/-/g,'/');
s=new Date(s);