JS日期格式转换和倒计时显示

JS日期格式转换

显示效果:5月20日 18:00

第一步:在script中增加基础方法

Date.prototype.Format = function (fmt) {
        var o = {
        "M+": this.getMonth() + 1, //月份
        "d+": this.getDate(), //日
        "h+": this.getHours(), //小时
        "m+": this.getMinutes(), //分
        "s+": this.getSeconds(), //秒
        "q+": Math.floor((this.getMonth() + 3) / 3), //季度
        "S": this.getMilliseconds() //毫秒
        };
        if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
        for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
        return fmt;
}

该基础方法需定义在最前,否则将调用无效

第二步:写一个自己的方法处理数据

function getBeginTime(time){
    var time = time.replace(/-/g,"/");
    var beginTime= new Date(time);
    var begin = beginTime.Format("MM年dd日 hh:mm");
    return begin;
}

方法中,若传入参数time的格式为:2017-01-01 00:00:00,则需要time.replace(/-/g,”/”);将日期格式化为毫秒模式,若time格式本身为毫秒,则无需此方法转换。

beginTime.Format(“MM年dd日 hh:mm”)即为调用之前的基础方法,实现日期转换,format里面的字符串可以一般Java方法中参数的来,例如“yyyy年MM月dd日 hh:mm:ss” 。

JS倒计时

显示效果:18:09:08

第一步:在script中增加基础方法

function cutTime(time,id){
    var time = time.replace(/-/g,"/");
    var EndTime= new Date(time);
    var NowTime = new Date();
    var t =EndTime.getTime() - NowTime.getTime();
    var d=Math.floor(t/1000/60/60/24);
    var h=Math.floor(t/1000/60/60%24);
    var m=Math.floor(t/1000/60%60);
    var s=Math.floor(t/1000%60);

    h = checkTime(h);
    m = checkTime(m);
    s = checkTime(s);

    $("#th"+id).html(h);
    $("#tm"+id).html(m);
    $("#ts"+id).html(s);
}

第二步:对倒计时数字处理,处理时间为个位数的情况,补零操作

function checkTime(i){
    if(i<10) 
    { 
        i = "0" + i; 
    } 
    return i; 
}

第三步:调用JS延时方法,每隔一秒调用本方法

setInterval("cutTime('2017-12-12 10:00:00',1)",1000);

这样就完美实现了倒计时的显示了~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值