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 相关文章推荐
javascript 常用关键字列表集合
Dec 04 Javascript
基于jQuery的倒计时实现代码
May 30 Javascript
js查找某元素中的所有图片地址的方法
Jan 16 Javascript
js时间戳转为日期格式的方法
Dec 28 Javascript
vue.js初学入门教程(2)
Nov 07 Javascript
JavaScript中关于for循环删除数组元素内容时出现的问题
Nov 21 Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
Dec 14 Javascript
Bootstrap和Java分页实例第一篇
Dec 23 Javascript
微信小程序之事件交互操作实例分析
Dec 03 Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
Apr 17 Javascript
JS实现可控制的进度条
Mar 25 Javascript
在项目vue中使用echarts的操作步骤
Sep 07 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
PHPMailer邮件类利用smtp.163.com发送邮件方法
2008/09/11 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
在Debian系统下配置LNMP的教程
2015/07/09 PHP
PHP获取页面执行时间的方法(推荐)
2016/12/10 PHP
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
jQuery之折叠面板的深入解析
2013/06/19 Javascript
jquery中加载图片自适应大小主要实现代码
2013/08/23 Javascript
JS抛物线动画实例制作
2018/02/24 Javascript
angularJS实现动态添加,删除div方法
2018/02/27 Javascript
Javascript Promise用法详解
2018/05/10 Javascript
使用vue.js在页面内组件监听scroll事件的方法
2018/09/11 Javascript
PHP实现基于Redis的MessageQueue队列封装操作示例
2019/02/02 Javascript
个人小程序接入支付解决方案
2019/05/23 Javascript
vue router 跳转时打开新页面的示例方法
2019/07/28 Javascript
关于layui导航栏不展示下拉列表的解决方法
2019/09/25 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
[05:24]TI9采访——教练
2019/08/24 DOTA
python不带重复的全排列代码
2013/08/13 Python
python编写朴素贝叶斯用于文本分类
2017/12/21 Python
Python中利用xpath解析HTML的方法
2018/05/14 Python
Python PyAutoGUI模块控制鼠标和键盘实现自动化任务详解
2018/09/04 Python
Pycharm运行加载文本出现错误的解决方法
2019/06/27 Python
利用Python pandas对Excel进行合并的方法示例
2020/11/04 Python
CSS实现的一闪而过的图片闪光效果
2014/04/23 HTML / CSS
LG西班牙网上商店:Tienda LG Online Es
2019/07/30 全球购物
自我评价正确写法范文
2013/12/10 职场文书
西门豹教学反思
2014/02/04 职场文书
刘胡兰的英雄事迹材料
2014/02/11 职场文书
如何写新闻稿
2015/07/18 职场文书
大学学生会主席竞选稿
2015/11/19 职场文书
学生会宣传部竞选稿
2015/11/21 职场文书
PyQt5 显示超清高分辨率图片的方法
2021/04/11 Python
python 如何获取页面所有a标签下href的值
2021/05/06 Python
详解盒子端CSS动画性能提升
2021/05/24 HTML / CSS
详解Python内置模块Collections
2022/03/22 Python
td 内容自动换行 table表格td设置宽度后文字太多自动换行
2022/12/24 HTML / CSS