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 相关文章推荐
关于使用runtimeStyle属性问题讨论文章
Mar 08 Javascript
一段实现页面上的图片延时加载的js代码
Feb 11 Javascript
VBS通过WMI监视注册表变动的代码
Oct 27 Javascript
jquery实现效果比较好的table选中行颜色
Mar 25 Javascript
JS实现点击上移下移LI行数据的方法
Aug 05 Javascript
基于JavaScript实现移动端TAB触屏切换效果
Oct 20 Javascript
JSON 数据详解及实例代码分析
Jan 20 Javascript
微信小程序 点击控件后选中其它反选实例详解
Feb 21 Javascript
JavaScript的继承实现小结
May 07 Javascript
实现一个完整的Node.js RESTful API的示例
Sep 29 Javascript
js、jquery实现列表模糊搜索功能过程解析
Mar 27 jQuery
vue中可编辑树状表格的实现代码
Oct 31 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
PHP使用适合阅读的格式显示文件大小的方法
2015/03/05 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
PHP接收App端发送文件流的方法
2016/09/23 PHP
利用PHP实现一个简单的用户登记表示例
2017/04/25 PHP
PHP实现断点续传乱序合并文件的方法
2018/09/06 PHP
javascipt基础内容--需要注意的细节
2013/04/10 Javascript
js中继承的几种用法总结(apply,call,prototype)
2013/12/26 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
JS特效实现图片自动播放并可控的效果
2015/07/31 Javascript
Javascript中replace()小结
2015/09/30 Javascript
JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系
2015/11/15 Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
2016/04/18 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
Bootstrap的class样式小结
2016/12/01 Javascript
利用vue写todolist单页应用
2016/12/15 Javascript
JS一个简单的注册页面实例
2017/09/05 Javascript
基于js粘贴事件paste简单解析以及遇到的坑
2017/09/07 Javascript
JavaScript callback回调函数用法实例分析
2018/05/08 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
简单谈谈python的反射机制
2016/06/28 Python
Python实现进程同步和通信的方法
2018/01/02 Python
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
2019/03/05 Python
解决Python图形界面中设置尺寸的问题
2020/03/05 Python
Python使用pdb调试代码的技巧
2020/05/03 Python
Python-jenkins模块之folder相关操作介绍
2020/05/12 Python
Python SMTP配置参数并发送邮件
2020/06/16 Python
Python爬虫之Selenium鼠标事件的实现
2020/12/04 Python
"序列点" 是什么
2016/07/29 面试题
广告学专业毕业生自荐信
2013/09/24 职场文书
基层领导干部“四风”问题批评与自我批评
2014/09/23 职场文书
滞留工资返还协议书
2014/10/19 职场文书
职称评定个人总结
2015/03/05 职场文书
红领巾广播站广播稿
2015/08/19 职场文书
源码分析Redis中 set 和 sorted set 的使用方法
2022/03/22 Redis