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 相关文章推荐
javascript语言结构小记(一)
Sep 10 Javascript
JQueryEasyUI Layout布局框架的使用
Apr 08 Javascript
AngularJS出现$http异步后台无法获取请求参数问题的解决方法
Nov 03 Javascript
jQuery实现链接的title快速出现的方法
Feb 20 Javascript
JS获取数组中出现次数最多及第二多元素的方法
Oct 27 Javascript
Angular17之Angular自定义指令详解
Jan 21 Javascript
AnglarJs中的上拉加载实现代码
Feb 08 Javascript
JS在if中的强制类型转换方式
Jul 15 Javascript
原生JS实现$.param() 函数的方法
Aug 10 Javascript
详解vue使用$http服务端收不到参数
Apr 19 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
Jan 22 Javascript
解决vue页面渲染但dom没渲染的操作
Jul 27 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 email邮箱正则
2008/10/08 PHP
php 删除记录实现代码
2009/03/12 PHP
php calender(日历)二个版本代码示例(解决2038问题)
2013/12/24 PHP
php使用cookie显示用户上次访问网站日期的方法
2015/01/26 PHP
PHP安全上传图片的方法
2015/03/21 PHP
PHP根据session与cookie用户登录状态操作类的代码
2016/05/13 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
js类 from qq
2006/11/13 Javascript
理解Javascript_02_理解undefined和null
2010/10/11 Javascript
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
JavaScript基础篇之变量作用域、传值、传址的简单介绍与实例
2013/06/29 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
js判断登陆用户名及密码是否为空的简单实例
2016/05/16 Javascript
利用js判断手机是否安装某个app的多种方案
2017/02/13 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
2017/08/14 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
2018/08/25 Javascript
小程序点赞收藏功能的实现代码示例
2018/09/07 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
Vue项目打包编译优化方案
2020/09/16 Javascript
[03:12]2016完美“圣”典风云人物:单车专访
2016/12/02 DOTA
Python标准库defaultdict模块使用示例
2015/04/28 Python
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
python解析html提取数据,并生成word文档实例解析
2018/01/22 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
Django后端接收嵌套Json数据及解析详解
2019/07/17 Python
python图的深度优先和广度优先算法实例分析
2019/10/26 Python
Django使用Celery加redis执行异步任务的实例内容
2020/02/20 Python
Django 5种类型Session使用方法解析
2020/04/29 Python
解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题
2020/06/17 Python
简单介绍CSS3中Media Query的使用
2015/07/07 HTML / CSS
Lou & Grey美国官网:主打舒适性面料服饰
2017/12/21 全球购物
2014年三八妇女节活动方案
2014/02/28 职场文书
考试作弊检讨书
2014/10/21 职场文书
广告文案的撰写技巧(实用干货)
2019/08/23 职场文书
Python使用永中文档转换服务
2022/05/06 Python