一个格式化日期和时间的JavaScript类库

简介:

原文地址:http://www.cnblogs.com/zhangpengshou/archive/2012/07/19/2599053.html

  结合meizz的代码做了适当调整。

复制代码
Date.prototype.Format = function (fmt) {
    var that = this;
    var postfix = false;
    var o = {
        "M+": this.getMonth() + 1, //month
        "d+": this.getDate(), //day
        "h+": function () {
            return postfix ? (that.getHours() % 12 == 0 ? 12 : that.getHours() % 12) : that.getHours();
        }, //hour
        "m+": this.getMinutes(), //minute
        "s+": this.getSeconds(), //second
        "q+": Math.floor((this.getMonth() + 3) / 3), //quarter
        "S": this.getMilliseconds() //millisecond
    };
    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)) {
            if (RegExp.$1.length == 1 && RegExp.$1 == "h") postfix = true;
            var val = typeof (o[k]) == "function" ? o[k].apply(this) : o[k];
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (val) : (("00" + val).substr(("" + val).length)));
            
        }
    }
    return fmt + (postfix ? ((this.getHours() < 12) ? " AM" : " PM") : "");
}

// following are testing code
var Ld = "26-09-2014"; var Lt = "13:15:23"; var arrDateParts = Ld.split("-"); if (arrDateParts.length == 3) { var dayNum = arrDateParts[0]; var monthNum = arrDateParts[1]; var yearNum = arrDateParts[2]; var D = new Date(monthNum.concat("/", dayNum, "/", yearNum, ' ', Lt)); console.info(D.Format("M/dd/yyyy h:mm:ss")); }
复制代码

  以上代码可根据所提供的格式字符串以及时间来判断是否需要添加AM/PM后缀。

分类:  Javascript
本文转自Jaxu博客园博客,原文链接:http://www.cnblogs.com/jaxu/p/3998736.html ,如需转载请自行联系原作者

相关文章
|
5月前
|
JavaScript
uni-app中关于格式化时间的js文件
uni-app中关于格式化时间的js文件
85 0
|
5月前
|
前端开发 JavaScript 算法
轻松实现数字格式化:JavaScript 中的千分位分隔技巧大揭秘
轻松实现数字格式化:JavaScript 中的千分位分隔技巧大揭秘
256 0
|
5月前
|
JSON JavaScript 前端开发
设置WebStorm像VSCode一样每行代码结尾自动格式化加入“;”分号(JavaScript、TypeScript格式化)
设置WebStorm像VSCode一样每行代码结尾自动格式化加入“;”分号(JavaScript、TypeScript格式化)
|
3天前
|
JSON JavaScript 前端开发
js如何格式化一个JSON对象?
js如何格式化一个JSON对象?
10 3
|
2月前
|
JavaScript
js金额数字格式化
本文介绍了两种实现数字格式化的方法:字符串操作与正则表达式。首先,通过递归地在每三位数字间插入逗号来格式化整数。接着,扩展该功能以支持自定义小数位数及分隔符,适用于更广泛的场景。最后,展示了如何利用正则表达式简化上述过程,实现相同的功能。
|
4月前
|
JavaScript 前端开发
Notepad++如何格式化JS代码
Notepad++如何格式化JS代码
600 1
|
3月前
|
JavaScript
js 金额格式化——显示千位分隔符
js 金额格式化——显示千位分隔符
44 0
|
3月前
|
JavaScript 前端开发
js/javascript 操作时间日期【全】含时间日期的创建、获取、比较、计算、格式化、时间戳、昨天、今天、星期汉化、计时、相关插件等
js/javascript 操作时间日期【全】含时间日期的创建、获取、比较、计算、格式化、时间戳、昨天、今天、星期汉化、计时、相关插件等
90 0
|
4月前
|
JavaScript 前端开发
杨校老师课堂之Web前端JS类库_JQuery案例[效果图与代码齐全]
杨校老师课堂之Web前端JS类库_JQuery案例[效果图与代码齐全]
32 0
|
5月前
|
JavaScript 前端开发
JavaScript 计算时间差并格式化输出
JavaScript 计算时间差并格式化输出
58 0