前端時間插件datatime.js


/**
 * 將時間轉換成時間戳
 * @param DateTime 爲時間格式下的時間 2018/06/14 13:00:00或2018-06-14 13:00:00
 * @returns {number}
 * @constructor
 */
function DateToUnix(DateTime) {
  var oDate =  new Date(Date.parse(DateTime.replace(/-/g, "/")));
  var Unix = oDate.getTime();
    return Unix;
}
function DeCa(Natural) {
    var NaturalNum;
    if (Natural<10){
        NaturalNum = "0"+Natural;
    }else {
        NaturalNum = Natural;
    }
    return NaturalNum;
}
/**
 * 將時間戳轉化爲時間
 * @param UnixTime 時間 格式 2018/06/14 13:00:00
 * @param ShowTime 時間展示格式 選擇 2018/06/14 13:00:00或2018-06-14 13:00:00等等格式
 * @constructor
 */

function UnixToDate(UnixTime,ShowTime) {
    var ToUnix = new Date(UnixTime);
    var Years = ToUnix.getFullYear();//獲取年 例子:2018
    var Month = ToUnix.getMonth()+1;//獲取月(0-11,0代表1月)
    var Day = ToUnix.getDate();//獲取日(0-31)
    var Week = ToUnix.getDay();//獲取星期(0-6;0代表星期天)
    var Hours = ToUnix.getHours();//獲取小時(0-23)
    var Minutes = ToUnix.getMinutes();//獲取分鐘(0-59)
    var Seconds = ToUnix.getSeconds();//獲取秒
    var DaTime;
    if(ShowTime == 2){
        DaTime = Years+"/"+DeCa(Month)+"/"+DeCa(Day)+" "+DeCa(Hours)+":"+DeCa(Minutes)+":"+DeCa(Seconds);
    }else if(ShowTime == 3){
        DaTime = Years+"年"+DeCa(Month)+"月"+DeCa(Day)+"日 "+DeCa(Hours)+":"+DeCa(Minutes)+":"+DeCa(Seconds);
    }else if(ShowTime == 4){
        DaTime = Years+"年"+DeCa(Month)+"月"+DeCa(Day)+"日";
    }else if(ShowTime == 5){
        DaTime = Years+"/"+DeCa(Month)+"/"+DeCa(Day);
    }else if (ShowTime == 6){
        DaTime = Years+"-"+DeCa(Month)+"-"+DeCa(Day);
    }else if(ShowTime == 7){
        DaTime =DeCa(Hours)+":"+DeCa(Minutes)+":"+DeCa(Seconds);
    }else if (ShowTime == 8){
        DaTime =DeCa(Hours)+"時"+DeCa(Minutes)+"分"+DeCa(Seconds)+"秒";
    }else if(ShowTime == 9){
        DaTime ="星期"+Week;
    }else if(ShowTime == 10){
        DaTime = NumBerToHanZi(Years)+"年"+NumBerToHanZi(Month)+"月"+NumBerToHanZi(Day)+"日 星期"+NumBerToHanZi(Week);
    }else if(ShowTime == 11){
        DaTime = Years+"-"+DeCa(Month)+"-"+DeCa(Day)+" "+DeCa(Hours)+":"+DeCa(Minutes)+":"+DeCa(Seconds)+" 星期"+Week;
    }else if(ShowTime == 12){
        DaTime = Years+"/"+DeCa(Month)+"/"+DeCa(Day)+" "+DeCa(Hours)+":"+DeCa(Minutes)+":"+DeCa(Seconds)+" 星期"+Week;
    }else if (ShowTime == 13){
        DaTime = Years+"年"+DeCa(Month)+"月"+DeCa(Day)+"日 "+DeCa(Hours)+"時"+DeCa(Minutes)+"分"+DeCa(Seconds)+"秒 星期"+Week;
    }else {
        DaTime = Years+"-"+DeCa(Month)+"-"+DeCa(Day)+" "+DeCa(Hours)+":"+DeCa(Minutes)+":"+DeCa(Seconds);
    }
     return DaTime;
}
//將阿拉伯數字轉換成漢字
function NumBerToHanZi(Numbers) {
    var strIns, chnStr='';
    var chnNumChar = ["零","一","二","三","四","五","六","七","八","九"];
    while(Numbers > 0){
        var v = Numbers % 10;
        strIns = chnNumChar[v];
        chnStr = chnNumChar[v] + chnStr;
        Numbers = Math.floor(Numbers / 10);
    }
    return chnStr;
}
// 計算時間差
function DownTime(EndTime) {
        //如果爲時間戳
    var EndTimes = new Date(EndTime).getTime();//結束時間

    var NowTime = new Date().getTime();//當前時間

    var DeltaT = EndTimes-NowTime;
    //計算出相差天數
    var days=Math.floor(DeltaT/(24*3600*1000));

    //計算出小時數

    var leave1=DeltaT%(24*3600*1000);
    var H=Math.floor(leave1/(3600*1000));
    //計算相差分鐘數
    var leave2=leave1%(3600*1000);
    var M=Math.floor(leave2/(60*1000));
    //計算相差秒數
    var leave3=leave2%(60*1000);
    var S=Math.round(leave3/1000);
    var reminder;
    if (DeltaT>0){
        if(days !=""){
          reminder = days+"天 "+H+"小時 "+M+" 分鐘"+S+" 秒";
        }else if(days =="" || H !=""){
            reminder = H+"小時 "+M+" 分鐘"+S+" 秒";
        }
    }else {
        reminder = "請注意!時間到了!";
    }
   return reminder;

}

 

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