JavaScript实现的一个日期格式化函数分享


Posted in Javascript onDecember 06, 2014

由于在工作中,经常需要对日期进行格式化,不像后端那样,有方便的方法可调用,可以在date的对象prototype中定义一个format方法,见如下:

// 日期时间原型增加格式化方法

Date.prototype.Format = function (formatStr) {

    var str = formatStr;

    var Week = ['日', '一', '二', '三', '四', '五', '六'];
    str = str.replace(/yyyy|YYYY/, this.getFullYear());

    str = str.replace(/yy|YY/, (this.getYear() % 100) > 9 ? (this.getYear() % 100).toString() : '0' + (this.getYear() % 100));

    var month = this.getMonth() + 1;

    str = str.replace(/MM/, month > 9 ? month.toString() : '0' + month);

    str = str.replace(/M/g, month);
    str = str.replace(/w|W/g, Week[this.getDay()]);
    str = str.replace(/dd|DD/, this.getDate() > 9 ? this.getDate().toString() : '0' + this.getDate());

    str = str.replace(/d|D/g, this.getDate());
    str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : '0' + this.getHours());

    str = str.replace(/h|H/g, this.getHours());

    str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes().toString() : '0' + this.getMinutes());

    str = str.replace(/m/g, this.getMinutes());
    str = str.replace(/ss|SS/, this.getSeconds() > 9 ? this.getSeconds().toString() : '0' + this.getSeconds());

    str = str.replace(/s|S/g, this.getSeconds());

    return str;

}

调用的时候比较简单,比如:

var d = new Date();

var str = d.Format("yyyy-MM-dd  hh:mm:ss");

console.log(str);
Javascript 相关文章推荐
js 获取浏览器高度和宽度值(多浏览器)
Sep 02 Javascript
JS 树形递归实例代码
May 18 Javascript
避免 showModalDialog 弹出新窗体的原因分析
May 31 Javascript
JavaScript实现页面实时显示当前时间的简单实例
Jul 20 Javascript
js添加table的行和列 具体实现方法
Jul 22 Javascript
IE下JS读取xml文件示例代码
Aug 05 Javascript
jQuery使用之设置元素样式用法实例
Jan 19 Javascript
手动初始化Angular的模块与控制器
Dec 26 Javascript
Angular在一个页面中使用两个ng-app的方法(二)
Feb 20 Javascript
JavaScript实现职责链模式概述
Jan 25 Javascript
深入理解Vue keep-alive及实践总结
Aug 21 Javascript
JS事件循环机制event loop宏任务微任务原理解析
Aug 04 Javascript
JavaScript实现twitter puddles算法实例
Dec 06 #Javascript
JavaScript实现的一个计算数字步数的算法分享
Dec 06 #Javascript
angularjs中的e2e测试实例
Dec 06 #Javascript
angularjs中的单元测试实例
Dec 06 #Javascript
angularjs指令中的compile与link函数详解
Dec 06 #Javascript
angularjs的一些优化小技巧
Dec 06 #Javascript
JavaScript开发人员的10个关键习惯小结
Dec 05 #Javascript
You might like
PHP4实际应用经验篇(6)
2006/10/09 PHP
PHP中的日期处理方法集锦
2007/01/02 PHP
CURL状态码列表(详细)
2013/06/27 PHP
php数组转换js数组操作及json_encode的用法详解
2013/10/26 PHP
php实现购物车产品删除功能(2)
2020/07/23 PHP
总结PHP内存释放以及垃圾回收
2018/03/29 PHP
学习YUI.Ext第五日--做拖放Darg&Drop
2007/03/10 Javascript
JavaScript入门教程(12) js对象化编程
2009/01/31 Javascript
jQuery 中DOM 操作详解
2015/01/13 Javascript
JS实现超炫网页烟花动画效果的方法
2015/03/02 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
2016/01/12 Javascript
jQuery操作属性和样式详解
2016/04/13 Javascript
基于Vue.js的表格分页组件
2016/05/22 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
vue解决一个方法同时发送多个请求的问题
2018/09/25 Javascript
Windows上node.js的多版本管理工具用法实例分析
2019/11/06 Javascript
[36:43]NB vs Optic 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
python 域名分析工具实现代码
2009/07/15 Python
python生成指定长度的随机数密码
2014/01/23 Python
Python中AND、OR的一个使用小技巧
2015/02/18 Python
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
2017/07/11 Python
Python带动态参数功能的sqlite工具类
2018/05/26 Python
详解Python if-elif-else知识点
2018/06/11 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
Python寻找两个有序数组的中位数实例详解
2018/12/05 Python
numpy求平均值的维度设定的例子
2019/08/24 Python
tensorflow 实现打印pb模型的所有节点
2020/01/23 Python
使用TensorFlow搭建一个全连接神经网络教程
2020/02/06 Python
CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
2014/10/11 HTML / CSS
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
某公司C#程序员面试题笔试题
2014/05/26 面试题
导购员的岗位职责
2014/02/08 职场文书
人力资源管理专业求职信
2014/07/23 职场文书
云南省召开党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
2016入党培训心得体会范文
2016/01/08 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python