首页 > 其他分享 >对Date的扩展,将 Date 转化为指定格式的String

对Date的扩展,将 Date 转化为指定格式的String

时间:2023-10-18 11:35:56浏览次数:38  
标签:String Format fmt new RegExp Date 格式

// 对Date的扩展,将 Date 转化为指定格式的String
// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
// 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
// 例子:
// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
// (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18
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;
}

 

标签:String,Format,fmt,new,RegExp,Date,格式
From: https://www.cnblogs.com/webtown/p/17771659.html

相关文章

  • MQTT控制报文格式 -- PINGRESP – PING response
    PINGRESP数据包由服务器发送到客户端以响应PINGREQ数据包。这表明服务器还活着。该数据包没有可变包头和Payload,剩余长度值为0固定包头格式如下:Bit76543210byte1MQTTControlPackettype(13)Reserved 1101......
  • mysql 日期格式为timestamp 和 datetime 使用month 函数取月份的区别
    1.DATE_FORMAT(data_dt,'%m')as`month`,使用这种方式无论什么类型的时间,取到的都是两位数。2.timstamp格式时间使用month()函数取出的月份只有一位。3.atetime格式时,month()函数获取到的就是两位数的月份。注意相关工具使用会不按预期执行,我的代码取到的月份为一位数,补没......
  • Go 提取字符串中url,转换为markdown格式并替换
     Go提取字符串中url,转换为markdown格式并替换//MakeContentUrlToMarkDown将字符串中url非markdown格式转[](url)格式funcMakeContentUrlToMarkDown(sourceStringstring)(resultStringstring){//urlReMustCompile:=regexp.MustCompile(".*(?P<URL>(http|https|......
  • .NET解所有相机RAW格式照片
    再聊.NET解相机RAW格式照片上次我发了一篇文章《用.NET解索尼相机ARW格式照片》,提到通过安装SonyRawFileDecoder的方式,然后调用WindowsImagingComponents来解析RAW格式文件。后来我经过进一步研究、探索,发现还有更简单的办法。新的方法实在是太简单、好用了,相比之下,我前一......
  • Windows Server 2016 OVF, updated Oct 2023 (sysin) - VMware 虚拟机模板
    WindowsServer2016OVF,updatedOct2023(sysin)-VMware虚拟机模板2023年10月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2016-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org现在......
  • Windows Server 2019 OVF, updated Oct 2023 (sysin) - VMware 虚拟机模板
    WindowsServer2019OVF,updatedOct2023(sysin)-VMware虚拟机模板2023年10月版本更新,现在自动运行sysprep,支持ESXiHostClient部署请访问原文链接:https://sysin.org/blog/windows-server-2019-ovf/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWind......
  • C# DateTime 时间比较(只包含年月日时分不包含秒)
    一、DateTime.Compare(全时间比较)//摘要://比较系统的两个实例。DateTime,并返回一个整数,该整数指示//第一个实例是否早于、相同于或晚于第二个实例//例如。////参数://t1://第一个要比较的对象。......
  • kubectl 格式化输出
    1、显示Pod的更多信息,例如Node等:[root@k8s-master~]#kubectlgetpodnginx-585449566-qkwhc-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESnginx-585449566-qkwhc1/1Runnin......
  • QT_Creator格式化工具使用
    参考:https://blog.csdn.net/weixin_50183638/article/details/131699478设置Linux风格--style=linux-N-S-M-p-H-U-j-k3设置switch整体缩进indent-switches设置namespace整体缩进indent-namespaces设置预处理模块缩进indent-preproc-block操作符前后填充空......
  • Java拾贝第四天——String和匿名对象
    Java拾贝不建议作为0基础学习,都是本人想到什么写什么复习突然发现String没写匿名对象只在堆内存中开辟空间,栈内存中没有对其进行引用的一种对象。(会等待被GC清除)publicclassTest4{publicstaticvoidmain(String[]args){newNoname("匿名对象");}}......