当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript格式化日期时间函数

Javascript
javascript 汉字与拼音转换
JavaScript使用cookie
大平洋汽车网左侧菜单
使用JS操作页面表格,元素的一些技巧
分享我学习js的过程 作者aircy javascript学习教程
张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
用js来生成随机彩票号码清单
发一个数据过滤的代码,很简单,有用的着的拿去
如何在标题栏显示框架内页面的标题
js滚动条多种样式,推荐
再次更新!MSClass (Class Of Marquee Scroll通用不间断滚动JS封装类 Ver 1.6)
符合web标准的连续滚动图像的js代码
使用iframe作为日历的载体,不再被select和flash等控件挡住的日期输入框
通过脚本控制指定内容不能被选择
模拟弹出窗口效果,关闭层之前,不能选择后面的页内容
另类弹出窗口,跳过所有拦截工具
使用prototype.js进行异步操作
JS模拟多线程
动态增加/删除文件域
[分享]一个非常漂亮的进度滚动条

Javascript 中的 javascript格式化日期时间函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 225 ::
收藏到网摘: n/a

下面的js函数是格式化日期的,函数是一行写的,所以大家可以直接负责应用就可以了
复制代码 代码如下:

function DateUtil(){}/***功能:格式化时间*示例:DateUtil.Format("yyyy/MM/dd","Thu Nov 9 20:30:37 UTC+0800 2006 ");*返回:2006/11/09*/DateUtil.Format=function(fmtCode,date){ var result,d,arr_d; var patrn_now_1=/^y{4}-M{2}-d{2}\sh{2}:m{2}:s{2}$/; var patrn_now_11=/^y{4}-M{1,2}-d{1,2}\sh{1,2}:m{1,2}:s{1,2}$/; var patrn_now_2=/^y{4}\/M{2}\/d{2}\sh{2}:m{2}:s{2}$/; var patrn_now_22=/^y{4}\/M{1,2}\/d{1,2}\sh{1,2}:m{1,2}:s{1,2}$/; var patrn_now_3=/^y{4}年M{2}月d{2}日\sh{2}时m{2}分s{2}秒$/; var patrn_now_33=/^y{4}年M{1,2}月d{1,2}日\sh{1,2}时m{1,2}分s{1,2}秒$/; var patrn_date_1=/^y{4}-M{2}-d{2}$/; var patrn_date_11=/^y{4}-M{1,2}-d{1,2}$/; var patrn_date_2=/^y{4}\/M{2}\/d{2}$/; var patrn_date_22=/^y{4}\/M{1,2}\/d{1,2}$/; var patrn_date_3=/^y{4}年M{2}月d{2}日$/; var patrn_date_33=/^y{4}年M{1,2}月d{1,2}日$/; var patrn_time_1=/^h{2}:m{2}:s{2}$/; var patrn_time_11=/^h{1,2}:m{1,2}:s{1,2}$/; var patrn_time_2=/^h{2}时m{2}分s{2}秒$/; var patrn_time_22=/^h{1,2}时m{1,2}分s{1,2}秒$/; if(!fmtCode){fmtCode="yyyy/MM/dd hh:mm:ss";} if(date){ d=new Date(date); if(isNaN(d)){ msgBox("时间参数非法\n正确的时间示例:\nThu Nov 9 20:30:37 UTC+0800 2006\n或\n2006/ 10/17"); return;} }else{ d=new Date(); } if(patrn_now_1.test(fmtCode)) { arr_d=splitDate(d,true); result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss; } else if(patrn_now_11.test(fmtCode)) { arr_d=splitDate(d); result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss; } else if(patrn_now_2.test(fmtCode)) { arr_d=splitDate(d,true); result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss; } else if(patrn_now_22.test(fmtCode)) { arr_d=splitDate(d); result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss; } else if(patrn_now_3.test(fmtCode)) { arr_d=splitDate(d,true); result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"+" "+arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒"; } else if(patrn_now_33.test(fmtCode)) { arr_d=splitDate(d); result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"+" "+arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒"; } else if(patrn_date_1.test(fmtCode)) { arr_d=splitDate(d,true); result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd; } else if(patrn_date_11.test(fmtCode)) { arr_d=splitDate(d); result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd; } else if(patrn_date_2.test(fmtCode)) { arr_d=splitDate(d,true); result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd; } else if(patrn_date_22.test(fmtCode)) { arr_d=splitDate(d); result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd; } else if(patrn_date_3.test(fmtCode)) { arr_d=splitDate(d,true); result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"; } else if(patrn_date_33.test(fmtCode)) { arr_d=splitDate(d); result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"; } else if(patrn_time_1.test(fmtCode)){ arr_d=splitDate(d,true); result=arr_d.hh+":"+arr_d.mm+":"+arr_d.ss; } else if(patrn_time_11.test(fmtCode)){ arr_d=splitDate(d); result=arr_d.hh+":"+arr_d.mm+":"+arr_d.ss; } else if(patrn_time_2.test(fmtCode)){ arr_d=splitDate(d,true); result=arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒"; } else if(patrn_time_22.test(fmtCode)){ arr_d=splitDate(d); result=arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒"; } else{ msgBox("没有匹配的时间格式!"); return; } return result;};function splitDate(d,isZero){ var yyyy,MM,dd,hh,mm,ss; if(isZero){ yyyy=d.getYear(); MM=(d.getMonth()+1)<10?"0"+(d.getMonth()+1):d.getMonth()+1; dd=d.getDate()<10?"0"+d.getDate():d.getDate(); hh=d.getHours()<10?"0"+d.getHours():d.getHours(); mm=d.getMinutes()<10?"0"+d.getMinutes():d.getMinutes(); ss=d.getSeconds()<10?"0"+d.getSeconds():d.getSeconds(); }else{ yyyy=d.getYear(); MM=d.getMonth()+1; dd=d.getDate(); hh=d.getHours(); mm=d.getMinutes(); ss=d.getSeconds(); } return {"yyyy":yyyy,"MM":MM,"dd":dd,"hh":hh,"mm":mm,"ss":ss}; }function msgBox(msg){ window.alert(msg);}

例子:
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]