1. 程式人生 > >JavaScript——計算兩個時間間隔的分鐘數

JavaScript——計算兩個時間間隔的分鐘數

function TimeDifference(){
  //定義兩個變數time1,time2分別儲存開始和結束時間
  var time1="2009-12-02 12:25";
  var time2="2009-12-03 12:35";

  //判斷開始時間是否大於結束日期
  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;
}