js两个时间的分钟数差值

function minutesCha( begin, end ) {
    //定义两个变量time1,time2分别保存开始和结束时间
    var time1 = begin || "2009-12-02T12:25:10.592Z";
    var time2 = end || "2009-12-02T12:35:20.589Z";

    //判断开始时间是否大于结束日期
    if (time1 > time2) {
        alert("开始时间不能大于结束时间!");
        return false;
    }

    //截取字符串,得到日期部分"2009-12-02",用split把字符串分隔成数组
    var begin1 = time1.substr(0, 10).split("-");
    var end1 = time2.substr(0, 10).split("-");

    //将拆分的数组重新组合,并实例成化新的日期对象
    var date1 = new Date(begin1[1] + - + begin1[2] + - + begin1[0]);
    var date2 = new Date(end1[1] + - + end1[2] + - + end1[0]);

    //得到两个日期之间的差值m,以分钟为单位
    //Math.abs(date2-date1)计算出以毫秒为单位的差值
    //Math.abs(date2-date1)/1000得到以秒为单位的差值
    //Math.abs(date2-date1)/1000/60得到以分钟为单位的差值
    var m = parseInt(Math.abs(date2 - date1) / 1000 / 60);

    //小时数和分钟数相加得到总的分钟数
    //time1.substr(11,2)截取字符串得到时间的小时数
    //parseInt(time1.substr(11,2))*60把小时数转化成为分钟
    var min1 = parseInt(time1.substr(11, 2)) * 60 + parseInt(time1.substr(14, 2));
    var min2 = parseInt(time2.substr(11, 2)) * 60 + parseInt(time2.substr(14, 2));

    //两个分钟数相减得到时间部分的差值,以分钟为单位
    var n = min2 - min1;

    //将日期和时间两个部分计算出来的差值相加,即得到两个时间相减后的分钟数
    var minutes = m + n;
    // 返回 分钟差
    return minutes;
}

 

posted @ 2020-08-06 13:17  王希有  阅读(2027)  评论(0编辑  收藏  举报