JavaScript下的时间格式处理函数Date.prototype.format


Posted in Javascript onJanuary 27, 2016

实例一:

一个全的js时间处理函数,虽然我没有仔细去研究里面的正则,但是我经过了测试,是非常好用的,你可以根据你自己的需求设置想要的时间格式的字符串输出,我应用到的格式为:MM/dd/yyyy hh:mm TT和yyyy-MM-dd HH:mm:ss。

<span style="font-size:18px;">Date.prototype.format = function (mask) 
{ 
var d = this; 
var zeroize = function (value, length) 
{ 
if (!length) length = 2; 
value = String(value); 
for (var i = 0, zeros = ''; i < (length - value.length); i++) 
{ 
zeros += '0'; 
} 
return zeros + value; 
}; 
return mask.replace(/"[^"]*"|'[^']*'|\b(?:d{1,4}|m{1,4}|yy(?:yy)?|([hHMstT])\1?|[lLZ])\b/g, function ($0) 
{ 
switch ($0) 
{ 
case 'd': return d.getDate(); 
case 'dd': return zeroize(d.getDate()); 
case 'ddd': return ['Sun', 'Mon', 'Tue', 'Wed', 'Thr', 'Fri', 'Sat'][d.getDay()]; 
case 'dddd': return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][d.getDay()]; 
case 'M': return d.getMonth() + 1; 
case 'MM': return zeroize(d.getMonth() + 1); 
case 'MMM': return ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'][d.getMonth()]; 
case 'MMMM': return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'][d.getMonth()]; 
case 'yy': return String(d.getFullYear()).substr(2); 
case 'yyyy': return d.getFullYear(); 
case 'h': return d.getHours() % 12 || 12; 
case 'hh': return zeroize(d.getHours() % 12 || 12); 
case 'H': return d.getHours(); 
case 'HH': return zeroize(d.getHours()); 
case 'm': return d.getMinutes(); 
case 'mm': return zeroize(d.getMinutes()); 
case 's': return d.getSeconds(); 
case 'ss': return zeroize(d.getSeconds()); 
case 'l': return zeroize(d.getMilliseconds(), 3); 
case 'L': var m = d.getMilliseconds(); 
if (m > 99) m = Math.round(m / 10); 
return zeroize(m); 
case 'tt': return d.getHours() < 12 ? 'am' : 'pm'; 
case 'TT': return d.getHours() < 12 ? 'AM' : 'PM'; 
case 'Z': return d.toUTCString().match(/[A-Z]+$/); 
// Return quoted strings with the surrounding quotes removed 
default: return $0.substr(1, $0.length - 2); 
} 
}); 
};</span>

实例二:

Date.prototype.format方法在date的原型中扩展了format方法,使其可以方便的格式化日期格式输出。

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 date = new Date(parseInt("1347497754133"));
date.format("yyyy-MM-dd");

以上通过两段实例代码给大家介绍了JavaScript下的时间格式处理函数Date.prototype.format的相关内容,希望对大家有所帮助。

Javascript 相关文章推荐
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
Jan 22 Javascript
基于jQuery替换table中的内容并显示进度条的代码
Aug 02 Javascript
js对象与打印对象分析比较
Apr 23 Javascript
纯Javascript实现Windows 8 Metro风格实现
Oct 15 Javascript
js简单实现HTML标签Select联动带跳转
Oct 23 Javascript
基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)
Dec 29 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
Sep 17 Javascript
AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
Nov 15 Javascript
jQuery删除当前节点元素
Dec 07 Javascript
解决vue里碰到 $refs 的问题的方法
Jul 13 Javascript
JavaScript中递归实现的方法及其区别
Sep 12 Javascript
详解Vuex中mapState的具体用法
Sep 28 Javascript
基于JavaScript实现瀑布流效果(循环渐近)
Jan 27 #Javascript
jQuery Easyui学习之datagrid 动态添加、移除editor
Jan 27 #Javascript
js实现简单排列组合的方法
Jan 27 #Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
Jan 27 #Javascript
JavaScript+html5 canvas制作的圆中圆效果实例
Jan 27 #Javascript
jQuery ajax分页插件实例代码
Jan 27 #Javascript
JavaScript+html5 canvas绘制的小人效果
Jan 27 #Javascript
You might like
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
PHP的FTP学习(二)
2006/10/09 PHP
修改php.ini以达到屏蔽错误信息并记录日志
2013/06/16 PHP
php+MySql实现登录系统与输出浏览者信息功能
2016/07/01 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
详解PHP PDO简单教程
2019/05/28 PHP
laravel-admin select框默认选中的方法
2019/10/03 PHP
JavaScript 利用Cookie记录用户登录信息
2009/12/08 Javascript
使用原生javascript创建通用表单验证——更锋利的使用dom对象
2011/09/13 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
js实现的折叠导航示例
2013/11/29 Javascript
深入理解javascript原型链和继承
2014/09/23 Javascript
JS实现从表格中动态删除指定行的方法
2015/03/31 Javascript
ajax异步请求详解
2017/01/06 Javascript
jQuery+ajax的资源回收处理机制分析
2017/01/07 Javascript
JS函数内部属性之arguments和this实例解析
2018/10/07 Javascript
js作用域和作用域链及预解析
2019/04/11 Javascript
vue实现自定义H5视频播放器的方法步骤
2019/07/01 Javascript
layui使用及简单的三级联动实现教程
2020/12/01 Javascript
[02:51]2014DOTA2 TI小组赛总结中国军团全部进军钥匙球馆
2014/07/15 DOTA
python中使用urllib2伪造HTTP报头的2个方法
2014/07/07 Python
Python打印斐波拉契数列实例
2015/07/07 Python
利用python在excel里面直接使用sql函数的方法
2019/02/08 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
解决PyCharm不在run输出运行结果而不是再Console里输出的问题
2020/09/21 Python
Melijoe美国官网:法国奢侈童装购物网站
2017/04/19 全球购物
Hanky Panky官方网站:内衣和睡衣
2019/07/25 全球购物
澳大利亚在线划船、露营和钓鱼商店:BCF Australia
2020/03/22 全球购物
广州地球村科技数据库题目
2016/04/25 面试题
企业厂长岗位职责
2013/12/17 职场文书
创业大赛策划书
2014/03/01 职场文书
大气污染防治方案
2014/05/19 职场文书
材料物理专业求职信
2014/09/01 职场文书
信息技术课教学反思
2016/02/23 职场文书
html5表单的required属性使用
2021/07/07 HTML / CSS