Js獲取當前日期時間、比較及正則表達式轉換格式

獲取當前日期時間

var now = new Date();
now.getYear();        //獲取當前年份(2位)
now.getFullYear();    //獲取完整的年份(4位,1970-****)
now.getMonth();       //獲取當前月份(0-11,0代表1月)
now.getDate();        //獲取當前日(1-31)
now.getDay();         //獲取當前星期X(0-6,0代表星期天)
now.getTime();        //獲取當前時間(從1970.1.1開始的毫秒數)
now.getHours();       //獲取當前小時數(0-23)
now.getMinutes();     //獲取當前分鐘數(0-59)
now.getSeconds();     //獲取當前秒數(0-59)
now.getMilliseconds();    //獲取當前毫秒數(0-999)
now.toLocaleDateString();     //獲取當前日期
now.toLocaleTimeString();     //獲取當前時間
now.toLocaleString( );        //獲取日期與時間

//日期時間比較

function getBuXiu()

 var Judge = true;
 var stateCaption = getFormElement('_STATECAPTION');
 if(stateCaption==null || stateCaption.value=="")
 { 
  var QjStart = document.getElementsByName("QjStart")[0];
  var QjEnd = document.getElementsByName("QjEnd")[0];
  var QjDays = document.getElementsByName("QjDays")[0];   
  if((QjStart.value!="")&&(QjEnd.value!=""))
  {
   if((new Date(QjStart.value.replace(/-/g,"\/"))) >= (new Date(QjEnd.value.replace(/-/g,"\/"))))//日期時間比較及JS 正則表達式替換所有
   {
    Judge = false;
    alert('開始時間大於或等於結束時間,請檢查!');    
   }
   else
   {
    QjDays.value=DateDiff(QjStart.value,QjEnd.value);//賦值
   }
  }
 }
 return Judge; 
}

//日期時間格式轉換
function DateDiff(sDate1, sDate2) {
 var arrDate, objDate1, objDate2, intDays;
 arrDate = sDate1.split('-');
 objDate1 = new Date(arrDate[1] + '-' + arrDate[2] + '-' + arrDate[0]);
 arrDate = sDate2.split('-');
 objDate2 = new Date(arrDate[1] + '-' + arrDate[2] + '-' + arrDate[0]);
        var hours=parseInt(Math.floor(objDate2 - objDate1)/(3600*1000));
        if(hours==0)
        intDays = 0;
        else if(((hours/8)<1)&&((hours/24)<1))
        intDays = Math.abs(hours/8); 
        else if(((hours/8)>=1)&&((hours/24)<=1))
        intDays = 1;
        else if(((hours/24)>1)&&((hours%24)<8)&&((hours%24)>0))
        intDays = (parseInt((hours/24))+Math.abs((hours%24)/8));//轉換成數字類型  及數的絕對值

        else if(((hours/24)>1)&&((hours%24)>=8)&&((hours%24)<24))
        intDays = (parseInt(hours/24)+1);  
 //intDays = parseInt(Math.abs(objDate1 - objDate2) / 1000 / 60 / 60 / 24);
 return intDays;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章