js时间格式转换以及倒计时(天-时-分-秒)

给出的时间格式为 "/Date(1586095959200)/"

function ChangeDateFormat(cellval) {//输出格式为"2020-04-05"
    var date = new Date(parseInt(cellval.replace("/Date(", "").replace(")/", ""), 10));
    var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
    var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
    return date.getFullYear() + "-" + month + "-" + currentDate;
}

function ChangeDateFormatseconds(cellval) {//输出格式为"2020-04-05 22:12:39"
    var date = new Date(parseInt(cellval.replace("/Date(", "").replace(")/", ""), 10));
    var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
    var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
    var hours=date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
    var minutes=date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
    var seconds=date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
    return date.getFullYear() + "-" + month + "-" + currentDate+' '+hours+':'+minutes+':'+seconds;
}

function datazhou(cellval) {//输出格式为"04月05日 周日 22:12"
    var weekday=["周日","周一","周二","周三","周四","周五","周六"];
    var date = new Date(parseInt(cellval.replace("/Date(", "").replace(")/", ""), 10));
    var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
    var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
    var hours=date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
    var minutes=date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
    var zhou=date.getDay();
    return month + "月" + currentDate+'日 '+weekday[zhou]+' '+hours+':'+minutes;
}

时间倒计时 

var end = new Date(parseInt(data.Activity.Deadline.replace("/Date(", "").replace(")/", ""), 10));
var endtime = (new Date(end)).getTime();//活动结束时间
var start = new Date(parseInt(data.Activity.StartTime.replace("/Date(", "").replace(")/", ""), 10));
var startime = (new Date(start)).getTime();//活动开始时间
var now = new Date().getTime();//现在时间
if(isend(now,startime)){//如果现在时间小于活动开始时间代表活动开始倒计时
   _this.openlast(startime,endtime);
}else if(isend(now,endtime)){//现在时间小于活动结束时间
   _this.endlast(endtime)                                
}else{//活动结束
   _this.jieshu();
};
function settimme(time1,time2){
    var surtime = time2 - time1;
    var d = Math.floor(surtime/(24*3600*1000)) 
    var leave1 = surtime%(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 times={'d':d,'h':h,'m':m,'s':s};
    return times;
}

function isend(time1,time2){    //是否结束    
    if (time2 >= time1) {
        return true;
    }
    return false;
}
function timeshow(endtime,timmer){//展示时间
    if(isend(endtime)){
        var timejson={'d':'-','h':'-','m':'-','s':'-'};
        clearInterval(timmer);
        return timejson;
    };    
    return settimme(endtime);
}

                 openlast:function(startime,endtime){var _this=this;
                        var now = new Date().getTime();
                        if(isend(now,startime)){
                            this.time=settimme(now,startime);
                        };
                        var timmer=setInterval(function(){
                            now = new Date().getTime();
                            if(isend(now,startime)){    
                                _this.time = settimme(now,startime);
                            }else{
                                _this.endlast(endtime);
                                clearInterval(timmer)
                            }    
                        },1000);
                    },
                    endlast:function(endtime){
                        var _this=this;
                        var now = new Date().getTime();
                        if(isend(now,endtime)){
                            this.time=settimme(now,endtime);
                        }else{
                            this.jieshu();
                        }
                        var timmer1=setInterval(function(){
                            var now = new Date().getTime();
                            if(isend(now,endtime)){
                                _this.time = settimme(now,endtime);
                            }else{
                                _this.jieshu();
                                clearInterval(timmer1)
                            }    
                        },1000);
                    },
                    jieshu:function(){this.time={'d':'-','h':'-','m':'-','s':'-'};
                    }
原文地址:https://www.cnblogs.com/vipp/p/12674073.html