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支持firefox,ie7页面布局拖拽效果代码
Dec 20 Javascript
基于Jquery的标签智能验证实现代码
Dec 27 Javascript
解决ueditor jquery javascript 取值问题
Dec 30 Javascript
基于javascript实现的快速排序
Dec 02 Javascript
浅谈javascript中执行环境(作用域)与作用域链
Dec 08 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
Feb 16 Javascript
JS/jQuery实现DIV延时几秒后消失或显示的方法
Feb 12 jQuery
浅析Vue中method与computed的区别
Mar 06 Javascript
Bootstrap 中data-[*] 属性的整理
Mar 13 Javascript
vue使用keep-alive保持滚动条位置的实现方法
Apr 09 Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
Jun 24 Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
Sep 30 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读取flv文件的播放时间长度
2009/09/03 PHP
PHP封装的Twitter访问类实例
2015/07/18 PHP
php5.4传引用时报错问题分析
2016/01/22 PHP
thinkPHP自定义类实现方法详解
2016/11/30 PHP
PHP中单例模式的使用场景与使用方法讲解
2019/03/18 PHP
javascript处理table表格的代码
2010/12/06 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
关于Javascript 对象(object)的prototype
2014/05/09 Javascript
javascript实现图像循环明暗变化的方法
2015/02/25 Javascript
使用Node.js配合Nginx实现高负载网络
2015/06/28 Javascript
基于javascript实现根据身份证号码识别性别和年龄
2016/01/22 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
Javascript表单特效之十大常用原理性样例代码大总结
2016/07/12 Javascript
JavaScript中Number对象的toFixed() 方法详解
2016/09/02 Javascript
JSON与String互转的实现方法(Javascript)
2016/09/27 Javascript
js实现不提示直接关闭网页窗口
2017/03/30 Javascript
js实现按座位号抽奖
2017/04/05 Javascript
实例解析ES6 Proxy使用场景介绍
2018/01/08 Javascript
微信小程序左滑动显示菜单功能的实现
2018/06/14 Javascript
微信小程序系列之自定义顶部导航功能
2019/05/21 Javascript
LayUI动态设置checkbox不显示的解决方法
2019/09/02 Javascript
js实现圆形显示鼠标单击位置
2020/02/11 Javascript
Linux 下 Python 实现按任意键退出的实现方法
2016/09/25 Python
python 常见字符串与函数的用法详解
2018/11/23 Python
python时间序列按频率生成日期的方法
2019/05/14 Python
python文档字符串(函数使用说明)使用详解
2019/07/30 Python
Python 网络编程之UDP发送接收数据功能示例【基于socket套接字】
2019/10/11 Python
pip install命令安装扩展库整理
2021/03/02 Python
企业优秀团员事迹材料
2014/08/20 职场文书
六一儿童节标语
2014/10/08 职场文书
假释思想汇报范文
2014/10/11 职场文书
党员剖析材料范文
2014/12/18 职场文书
工程技术负责人岗位职责
2015/04/13 职场文书
《唯一的听众》教学反思
2016/02/18 职场文书
7个关于Python的经典基础案例
2021/11/07 Python
Python OpenGL基本配置方式
2022/05/20 Python