一个格式化日期和时间的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后缀。

时间: 2024-12-23 14:19:34

一个格式化日期和时间的JavaScript类库的相关文章

java初级应用----格式化---日期与时间格式化

问题描述: 实际编程过程中,常常要输出日期与时间,也需要对日期与时间进行格式化输出. 日期与时间都可以转化成String对象,所以可以使用String类中的format()函数对日期与时间字符串进行格式化. 编程思路: 1)明确String类中format()函数有两种重载形式: public static String format(String format, Object ... args) 功能:使得字符串按照参数所指定的格式被格式化,并且格式化之后的新字符串使用本地默认的语言环境 @p

格式化日期和时间

//格式化日期 var months=["Jan", "Feb", "Mar", "Apr", "May","Jun","Jul","Aug","Sep","Oct","Nov", "Dec"]; function formatDate(time){ if(!time)

java 使用simpleDateFormat格式化日期 时间.RP

首先了解一下格式化日志的所有表示. [plain] view plain copy 时间日期标识符: yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) [plain] view plain copy HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一年中的第几天 F:一月中的第几个星期(会把这个月总共过的天数除以7) w:一年中的第几个星期 W:一月中的第几星期(会根据实际情况来算) a:上下午标识 k:和HH差不多,表示一天24小时制(1-24).

使用moment.js轻松管理日期和时间

大家在前端Javascript开发中会遇到处理日期时间的问题,经常会拿来一大堆处理函数才能完成一个简单的日期时间显示效果.今天我给大家介绍一个轻量级的Javascript日期处理类库:moment.js,使用它可以轻松解决前端开发中遇到的种种日期时间问题. 查看演示 下载源码 moment.js不依赖任何第三方库,支持字符串.Date.时间戳以及数组等格式,可以像PHP的date()函数一样,格式化日期时间,计算相对时间,获取特定时间后的日期时间等等,本文有如下举例. 格式化日期 当前时间: m

C++日期和时间

C++ 日期 & 时间 C++ 标准库没有提供所谓的日期类型.C++ 继承了 C 语言用于日期和时间操作的结构和函数.为了使用日期和时间相关的函数和结构,需要在 C++ 程序中引用 <ctime> 头文件. 有四个与时间相关的类型:clock_t.time_t.size_t 和 tm.类型 clock_t.size_t 和 time_t 能够把系统时间和日期表示为某种整数. 结构类型 tm 把日期和时间以 C 结构的形式保存,tm 结构的定义如下: struct tm { int tm

我的OC成长之路(日期与时间)

一.NSDate NSDate对象代表日期与时间,Objective-C提供了类方法来创建NSDate对象,也提供了大量init开头的方法来初始化NSDate对象. ①获取代表当前日期.时间的NSDate NSDate *date1 = [NSDate date]; ②获取从当前时间开始1天之后/三天之前的日期 NSDate *date2 = [[NSDate alloc]initWithTimeIntervalSinceNow:3600*24]; NSDate *date3 = [[NSDat

PHP日期和时间处理

日期和时间处理可以分为格式化日期和时间,获取日期和时间信息,获取本地化的日期和时间及检验日期和时间的有效性. 格式化日期和时间 PHP中通过date()函数对本地日期和时间进行格式化.语法如下: date(string format,int timestamp) 参数format指日期和时间输出的格式 参数timestamp是可选的,用于指定时间戳,如果没有给出时间戳,则使用本地当前时间time(). 例如 echo date("Y-m-d")."<br>&quo

Python学习进程(11)日期和时间

    本节介绍Python应用程序处理时间和日期的方式.其中转换日期格式是最常用的功能.     (1)获取时间戳: Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 函数time.time()用于获取当前时间戳: >>> import time >>> tickets=time.time() >>> print "当前时间戳是:",tickets 当前时间戳是: 1469240559.05

【转】Python 日期和时间

本文转自:http://www.runoob.com/python/python-date-time.html Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 时间间隔是以秒为单位的浮点小数. 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示. Python 的 time 模块下有很多函数可以转换常见日期格式.如函数time.time()用于获取当前时间戳,