zoukankan      html  css  js  c++  java
  • js 日期格式化

    网上拷贝的,好用留着。

     1 // 对Date的扩展,将 Date 转化为指定格式的String
     2 // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, 
     3 // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) 
     4 // 例子: 
     5 // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 
     6 // (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18 
     7 Date.prototype.fmt = function (fmt) { //author: meizz 
     8     var o = {
     9         "M+": this.getMonth() + 1, //月份 
    10         "d+": this.getDate(), //
    11         "h+": this.getHours(), //小时 
    12         "m+": this.getMinutes(), //
    13         "s+": this.getSeconds(), //
    14         "q+": Math.floor((this.getMonth() + 3) / 3), //季度 
    15         "S": this.getMilliseconds() //毫秒 
    16     };
    17     if (/(y+)/.test(fmt)) {
    18         fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    19     }
    20     for (var k in o)
    21         if (new RegExp("(" + k + ")").test(fmt)) 
    22             fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    23     return fmt;
    24     
    25 }
    // 原形添加设定时间方法
    Date.prototype.SetTime = function (h, m, s) {
        this.setHours(h);
        this.setMinutes(m);
        this.setSeconds(s);
        this.setMilliseconds(0);
        return this;
    };
    
    // 拷贝日期部分
    Date.prototype.CopyDate = function (date) {
        this.setFullYear(date.getFullYear());
        this.setMonth(date.getMonth());
        this.setDate(date.getDate());
        return this;
    };
    
    // 将小时和分钟清零
    Date.prototype.Clear = function () {
        this.setMinutes(0);
        this.setSeconds(0);
        return this;
    };
    
    /* 将日期字符串转化为日期 */
    Date.prototype.fromStr = function (dateStr) {
        var datetime = dateStr.split(' ');
        var date = datetime[0].split(/[-//]/);
        this.setFullYear(Number(date[0]));
        this.setMonth(Number(date[1])-1);
        this.setDate(Number(date[2]));
    
        var time = datetime[1].split(':');
        this.setHours(Number(time[0]));
        this.setMinutes(Number(time[1]));
        this.setSeconds(Number(time[2]));
        this.setMilliseconds(0);
        return this;
    };
    
    /* 后推xx天 */
    Date.prototype.addDays = function (days) {
        var ms = days * 24 * 60 * 60 * 1000;
        var newTime = this.getTime() + ms;
        this.setTime(newTime);
        return this;
    };
    
    /* 后推xx小时 */
    Date.prototype.addHours = function (hours) {
        var ms = hours * 60 * 60 * 1000;
        var newTime = this.getTime() + ms;
        this.setTime(newTime);
        return this;
    };
    
    /* 后推xx分钟 */
    Date.prototype.addMins = function (mins) {
        var ms = mins * 60 * 1000;
        var newTime = this.getTime() + ms;
        this.setTime(newTime);
        return this;
    };
  • 相关阅读:
    设置eclipse编码
    前端基础知识
    微信小程序
    jQuery下拉框
    Vue-cli的安装
    vue的数据交互形式
    node安装和小测试
    shui
    JQ-滚动条下拉无限的加载数据
    HTML-video全屏
  • 原文地址:https://www.cnblogs.com/jonney-wang/p/9424573.html
Copyright © 2011-2022 走看看