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 相关文章推荐
jQuery版仿Path菜单效果
Dec 15 Javascript
js图片自动切换效果处理代码
May 07 Javascript
JS cookie中文乱码解决方法
Jan 28 Javascript
js图片模糊切换显示特效的方法
Feb 17 Javascript
javascript通过元素id和name直接取得元素的方法
Apr 28 Javascript
详解AngularJS 模态对话框
Apr 07 Javascript
JS实用技巧小结(屏蔽错误、div滚动条设置、背景图片位置等)
Jun 16 Javascript
js实现四舍五入完全保留两位小数的方法
Aug 02 Javascript
深入浅析JavaScript中的3DES
Aug 24 Javascript
详解闭包解决jQuery中AJAX的外部变量问题
Feb 22 Javascript
vue实现单选和多选功能
Aug 11 Javascript
jQuery实现图片随机切换、抽奖功能(实例代码)
Oct 23 jQuery
解决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
WINDOWS服务器安装多套PHP的另类解决方案
2006/10/09 PHP
说说PHP的autoLoad自动加载机制
2012/09/27 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
PHP实现HTML页面静态化的方法
2015/11/04 PHP
PHP url的pathinfo模式加载不同控制器的简单实现
2016/08/12 PHP
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
HTML中不支持静态Expando的元素的问题
2007/03/08 Javascript
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
jQuery实现多级下拉菜单jDropMenu的方法
2015/08/28 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
2015/09/19 Javascript
javascript表单事件处理方法详解
2016/05/15 Javascript
解析Vue2 dist 目录下各个文件的区别
2017/11/22 Javascript
微信小程序左右滑动的实现代码
2017/12/15 Javascript
layui结合form,table的全选、反选v1.0示例讲解
2018/08/15 Javascript
详解如何提升JSON.stringify()的性能
2019/06/12 Javascript
uni-app如何实现增量更新功能
2020/01/03 Javascript
react 原生实现头像滚动播放的示例
2020/04/21 Javascript
vue 通过 Prop 向子组件传递数据的实现方法
2020/10/30 Javascript
Python三级目录展示的实现方法
2016/09/28 Python
基于Python的接口测试框架实例
2016/11/04 Python
Python实现简单文本字符串处理的方法
2018/01/22 Python
python实现字符串完美拆分split()的方法
2019/07/16 Python
wxPython窗体拆分布局基础组件
2019/11/19 Python
在Pytorch中计算自己模型的FLOPs方式
2019/12/30 Python
使用python-Jenkins批量创建及修改jobs操作
2020/05/12 Python
HTML5仿手机微信聊天界面
2016/03/18 HTML / CSS
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
工业设计专业个人求职信范文
2013/12/28 职场文书
详细的大学生创业计划书模板
2014/01/27 职场文书
党建目标管理责任书
2014/07/25 职场文书
中小学校园安全广播稿
2014/09/29 职场文书
行政执法作风整顿剖析材料
2014/10/11 职场文书
一般纳税人申请报告
2015/05/18 职场文书
为什么阅读对所有年龄段的孩子都很重要?
2019/07/08 职场文书
元素水平垂直居中的方式
2021/03/31 HTML / CSS
Win11显卡控制面板打开显卡设置方法
2022/04/20 数码科技