JS 时间格式化

JS 时间格式化

// 有其他格式化字符需求可以继续添加,必须转化成字符串  如:YYYY-mm-dd HH:MM表示2019-06-06 19:45
// 参数可传入 毫秒 或者其他日期
dateFormat(fmt, date1) {
            let date = new Date(date1)
            let ret;
            const opt = {
                "Y+": date.getFullYear().toString(), // 年
                "m+": (date.getMonth() + 1).toString(), // 月
                "d+": date.getDate().toString(), // 日
                "H+": date.getHours().toString(), // 时
                "M+": date.getMinutes().toString(), // 分
                "S+": date.getSeconds().toString(), // 秒
            
            };
            for (let k in opt) {
                ret = new RegExp("(" + k + ")").exec(fmt);
                if (ret) {
                    fmt = fmt.replace(
                        ret[1],
                        ret[1].length == 1
                            ? opt[k]
                            : opt[k].padStart(ret[1].length, "0")
                    );
                }
            }
            return fmt;
        }
// 调用 this.dateFormat('YYYY-mm-dd',new Date())


 //格式化日期转换 秒 00:00:00 → 10s
		     ToSeconds(time){
				  var str = time;
				  var arr = str.split(':');
				  var hs = parseInt(arr[0]*3600);
				  var ms = parseInt(arr[1]*60);
				  var ss = parseInt(arr[2]);
				  var seconds = hs + ms + ss;
				  return seconds;
		  }

//日期倒计时
    function coutDownForDate(){
        
    var startTime = new Date().getTime() ; /l开始时间
    var endTime = new Date("2016/12/31,23:59:59");//结束时间
    var diffTime = parseInt((endTime-startTime)/1000,10);//得到两个时间差的秒数
        
    //根据秒数来计算天、时、分、秒
    var day = parseInt(diffTime/ (24*60*60),10);//1天=24小时1小时=60分1分=60秒
        
    //1小时=60分1分=60秒,diffTime/ ( 60*60 )=所有的秒数用小时来表示有多少个小时
    //再%24,整除部分()作为整天算到天的计时了,余数部分也就是小时的计时了
    //再取个整,被抹去的小时数会自动算到分里面,分中被抹去的会计算到秒中
    var hour = parseInt((diffTime/(60*60))%24,10) ;//小时
    var minute = parseInt((diffTime/60)%60,10);//分钟︰先计算成总共有多少分钟,再取分钟的余数
    var second = diffTime%60;//秒︰本来就是秒,直接获取最后剩下的秒就好了
        
    var timeout=null;
    if(diffTime>0 ) {//l有差值才显示,否则不显示
    document.getElementById("show3 ").innerHTML="距离过年还有:"+day+"天"+hour+"小
    时"+minute+""+second+"秒";
    //自动刷新
    timeout = setTimeout ( ()=>{this.coutDownForDate() },500 ) ;
    }else{
    document.getElementById( "show3 " ).innerHTML="去年已结束,新年已来临";
    clearTimeout(timeout ) ;
    }
        
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值