js格式化时间小结


Posted in Javascript onNovember 03, 2014

废话不多说,先把各种格式化方法贴给大家

var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString( ); //获取日期与时间

可以说是Web项目中不可或缺的一个Javascript类库,它可以帮助你快速的解决客户端编程的许多问题,下面贴出一个用js格式化时间的方法。

Date.prototype.format =function(format)

    {

        var o = {

        "M+" : this.getMonth()+1, //month

"d+" : this.getDate(),    //day

"h+" : this.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(format)) format=format.replace(RegExp.$1,

        (this.getFullYear()+"").substr(4- RegExp.$1.length));

        for(var k in o)if(new RegExp("("+ k +")").test(format))

        format = format.replace(RegExp.$1,

        RegExp.$1.length==1? o[k] :

        ("00"+ o[k]).substr((""+ o[k]).length));

        return format;

    }

以上代码必须先声明,然后在使用。使用方法:

var d =new Date().format('yyyy-MM-dd');
另一种方法:

在Javascript之中,日期对象是Date,那么如何将一个日期对象按照定制的格式进行输出呢?
  可以现告诉你,Date对象有有四个内置方法,用于输出为字符串格式,分别为:
  1)toGMTString,将一个日期按照GMT格式显示
  2)toLocaleString,将一个日期按照本地操作系统格式显示
  3)toLocaleDateString,按照本地格式显示一个日期对象的日期部分
  4)toLocaleTimeString,按照本地格式显示一个日期对象的时间部分
  尽管Javascript的Date对象中内置提供了这些输出为字符串的方法,但是这些字符串不是我们来控制格式的,因此如果我们需要我们自己定制的特殊格式,那么又该怎么办呢?
  不用着急,JsJava中提供了专用的类,专门对日期进行指定格式的字符串输出,你可以下载JsJava-2.0.zip,引入其中的src/jsjava/text/DateFormat.js,或者直接引入jslib/jsjava-2.0.js,样例代码如下:

var df=new SimpleDateFormat();//jsJava1.0需要使用DateFormat对象,不要弄错就是了 

df.applyPattern("yyyy-MM-dd HH:mm:ss"); 

var date=new Date(2007,3,30,10,59,51); 

var str=df.format(date); 

document.write(str);//显示结果为:2007-04-30 10:59:51

通过上面的例子你可以看出,你需要做的就是指定pattern,那么pattern中yyyy、MM等都表示什么意思呢?如果你学习过Java的日期格式化,那么你应该知道,那都是占位符,这些占位符都具有特殊的函数,例如y表示年,yyyy表示四个数字的年份,例如1982,下面列举一些pattern中支持的特殊字符及其含义(下面表格引自Java的官方文档,做了适当修改):

G Era designator [url=]Text[/url] AD 

y Year [url=]Year[/url] 1996; 96 

M Month in year [url=]Month[/url] July; Jul; 07 

w Week in year [url=]Number[/url] 27 

W Week in month [url=]Number[/url] 2 

D Day in year [url=]Number[/url] 189 

d Day in month [url=]Number[/url] 10 

F Day of week in month [url=]Number[/url] 2 

E Day in week [url=]Text[/url] Tuesday; Tue 

a Am/pm marker [url=]Text[/url] PM 

H Hour in day (0-23) [url=]Number[/url] 0 

k Hour in day (1-24) [url=]Number[/url] 24 

K Hour in am/pm (0-11) [url=]Number[/url] 0 

h Hour in am/pm (1-12) [url=]Number[/url] 12 

m Minute in hour [url=]Number[/url] 30 

s Second in minute [url=]Number[/url] 55 

S Millisecond [url=]Number[/url] 978

Javascript 相关文章推荐
解决iframe的frameborder在chrome/ff/ie下的差异
Aug 12 Javascript
基于jquery的滑动样例代码
Nov 20 Javascript
jQuery 1.7.2中getAll方法的疑惑分析
May 23 Javascript
js定时器(执行一次、重复执行)
Mar 07 Javascript
基于jquery实现智能提示控件intellSeach.js
Mar 17 Javascript
一系列Bootstrap导航条使用方法分享
Apr 29 Javascript
详解js实现线段交点的三种算法
Aug 09 Javascript
H5用户注册表单页 注册模态框!
Sep 17 Javascript
基于JS实现bookstore静态页面的实例代码
Feb 22 Javascript
bootstrap table表格使用方法详解
Apr 26 Javascript
详解webpack require.ensure与require AMD的区别
Dec 13 Javascript
vue项目前端知识点整理【收藏】
May 13 Javascript
解决js下referer兼容各大浏览器的方法
Nov 03 #Javascript
jQuery修改li下的样式以及li下的img的src的值的方法
Nov 02 #Javascript
jQuery中ajax和post处理json的不同示例对比
Nov 02 #Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
Nov 02 #Javascript
加载列表时jquery获取ul中第一个li的属性
Nov 02 #Javascript
基于jquery固定于顶部的导航响应浏览器滚动条事件
Nov 02 #Javascript
jQuery ajax serialize() 方法使用示例
Nov 02 #Javascript
You might like
php实现XML和数组的相互转化功能示例
2017/02/08 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
基于Laravel 5.2 regex验证的正确写法
2019/09/29 PHP
海量经典的jQuery插件集合
2010/01/12 Javascript
jquery tab插件精简版分享
2011/09/10 Javascript
js实现div拖动动画运行轨迹效果代码分享
2015/08/27 Javascript
Thinkjs3新手入门之添加一个新的页面
2017/12/06 Javascript
详解vue项目中如何引入全局sass/less变量、function、mixin
2018/06/02 Javascript
element-ui中的select下拉列表设置默认值方法
2018/08/24 Javascript
详解react内联样式使用webpack将px转rem
2018/09/13 Javascript
详解Vue路由自动注入实践
2019/04/17 Javascript
JS图片懒加载技术实现过程解析
2020/07/27 Javascript
[36:16]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.19
2020/12/24 DOTA
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
在Python操作时间和日期之asctime()方法的使用
2015/05/22 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
小白如何入门Python? 制作一个网站为例
2018/03/06 Python
深入理解Django的中间件middleware
2018/03/14 Python
python中cPickle类使用方法详解
2018/08/27 Python
Python get获取页面cookie代码实例
2018/09/12 Python
谈谈Python中的while循环语句
2019/03/10 Python
tensorflow如何批量读取图片
2019/08/29 Python
在python中使用nohup命令说明
2020/04/16 Python
python+requests接口自动化框架的实现
2020/08/31 Python
python自动化测试三部曲之unittest框架的实现
2020/10/07 Python
Python中常用的os操作汇总
2020/11/05 Python
使用bandit对目标python代码进行安全函数扫描的案例分析
2021/01/27 Python
Python 中Operator模块的使用
2021/01/30 Python
HTML5 微格式和相关的属性名称
2010/02/10 HTML / CSS
如何写好升职自荐信
2014/01/06 职场文书
《爱如茉莉》教后反思
2014/04/12 职场文书
关于运动会广播稿200字
2014/10/08 职场文书
领导班子对照检查剖析材料
2014/10/13 职场文书
环境建议书
2015/02/04 职场文书
前台接待岗位职责范本
2015/04/03 职场文书
DBCA命令行搭建Oracle ADG的流程
2021/06/11 Oracle