JS实现时间格式化的方式汇总


Posted in Javascript onOctober 16, 2013
//扩展Date的format方法 
Date.prototype.format = function (format) {
    var o = {
        "M+": this.getMonth() + 1,
        "d+": this.getDate(),
        "h+": this.getHours(),
        "m+": this.getMinutes(),
        "s+": this.getSeconds(),
        "q+": Math.floor((this.getMonth() + 3) / 3),
        "S": this.getMilliseconds()
    }
    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;
}
/**  
*转换日期对象为日期字符串  
* @param date 日期对象  
* @param isFull 是否为完整的日期数据,  
*               为true时, 格式如"2000-03-05 01:05:04"  
*               为false时, 格式如 "2000-03-05"  
* @return 符合要求的日期字符串  
*/  
function getSmpFormatDate(date, isFull) {
    var pattern = "";
    if (isFull == true || isFull == undefined) {
        pattern = "yyyy-MM-dd hh:mm:ss";
    } else {
        pattern = "yyyy-MM-dd";
    }
    return getFormatDate(date, pattern);
}
/**  
*转换当前日期对象为日期字符串  
* @param date 日期对象  
* @param isFull 是否为完整的日期数据,  
*               为true时, 格式如"2000-03-05 01:05:04"  
*               为false时, 格式如 "2000-03-05"  
* @return 符合要求的日期字符串  
*/  
function getSmpFormatNowDate(isFull) {
    return getSmpFormatDate(new Date(), isFull);
}
/**  
*转换long值为日期字符串  
* @param l long值  
* @param isFull 是否为完整的日期数据,  
*               为true时, 格式如"2000-03-05 01:05:04"  
*               为false时, 格式如 "2000-03-05"  
* @return 符合要求的日期字符串  
*/  
function getSmpFormatDateByLong(l, isFull) {
    return getSmpFormatDate(new Date(l), isFull);
}
/**  
*转换long值为日期字符串  
* @param l long值  
* @param pattern 格式字符串,例如:yyyy-MM-dd hh:mm:ss  
* @return 符合要求的日期字符串  
*/  
function getFormatDateByLong(l, pattern) {
    return getFormatDate(new Date(l), pattern);
}
/**  
*转换日期对象为日期字符串  
* @param l long值  
* @param pattern 格式字符串,例如:yyyy-MM-dd hh:mm:ss  
* @return 符合要求的日期字符串  
*/  
function getFormatDate(date, pattern) {
    if (date == undefined) {
        date = new Date();
    }
    if (pattern == undefined) {
        pattern = "yyyy-MM-dd hh:mm:ss";
    }
    return date.format(pattern);
}
//alert(getSmpFormatDate(new Date(1279849429000), true));
//alert(getSmpFormatDate(new Date(1279849429000),false));    
//alert(getSmpFormatDateByLong(1279829423000, true));
//alert(getSmpFormatDateByLong(1279829423000,false));    
//alert(getFormatDateByLong(1279829423000, "yyyy-MM"));
//alert(getFormatDate(new Date(1279829423000), "yy-MM"));
//alert(getFormatDateByLong(1279849429000, "yyyy-MM hh:mm"));
Javascript 相关文章推荐
JQUERY 对象与DOM对象之两者相互间的转换
Apr 27 Javascript
Prototype Date对象 学习
Jul 12 Javascript
script标签的 charset 属性使用说明
Dec 04 Javascript
基于Jquery的仿照flash放大图片效果代码
Mar 16 Javascript
Javascript基础_标记文字的实现方法
Jun 14 Javascript
JavaScript比较当前时间是否在指定时间段内的方法
Aug 02 Javascript
jQuery复制节点用法示例(clone方法)
Sep 08 Javascript
javascript基础知识讲解
Jan 11 Javascript
原生JS实现跑马灯效果
Feb 20 Javascript
React-Native之定时器Timer的实现代码
Oct 04 Javascript
实现elementUI表单的全局验证的方法步骤
Apr 29 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
Oct 26 jQuery
利用CSS、JavaScript及Ajax实现高效的图片预加载
Oct 16 #Javascript
div模拟滚动条效果示例代码
Oct 16 #Javascript
Jquery实现的tab效果可以指定默认显示第几页
Oct 16 #Javascript
jQuery实现等比例缩放大图片让大图片自适应页面布局
Oct 16 #Javascript
限制textbox或textarea输入字符长度的JS代码
Oct 16 #Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
Oct 15 #Javascript
纯Javascript实现Windows 8 Metro风格实现
Oct 15 #Javascript
You might like
phpmyadmin出现Cannot start session without errors问题解决方法
2014/08/14 PHP
Yii2验证器(Validator)用法分析
2016/07/23 PHP
thinkphp5.1框架实现格式化mysql时间戳为日期的方式小结
2019/10/10 PHP
Aster vs KG BO3 第二场2.18
2021/03/10 DOTA
JQuery each()函数如何优化循环DOM结构的性能
2012/12/10 Javascript
不用构造函数(Constructor)new关键字也能实现JavaScript的面向对象
2013/01/11 Javascript
点击隐藏页面左栏或右栏实现js代码
2013/04/01 Javascript
js实现大转盘抽奖游戏实例
2015/06/24 Javascript
NodeJS远程代码执行
2016/08/28 NodeJs
JS+Ajax实现百度智能搜索框
2017/08/04 Javascript
JSON创建键值对(key是中文或者数字)方式详解
2017/08/24 Javascript
jQuery实现checkbox即点即改批量删除及中间遇到的坑
2017/11/11 jQuery
JS设计模式之命令模式概念与用法分析
2018/02/06 Javascript
轻量级JS Cookie插件js-cookie的使用方法
2018/03/22 Javascript
详解使用vue-admin-template的优化历程
2018/05/20 Javascript
深入理解Vue 组件之间传值
2018/08/16 Javascript
layui动态加载多表头的实例
2019/09/05 Javascript
layui监听select变化,以及设置radio选中的方法
2019/09/24 Javascript
vue实现两个区域滚动条同步滚动
2020/12/13 Vue.js
python进阶教程之函数参数的多种传递方法
2014/08/30 Python
Python的Flask框架中配置多个子域名的方法讲解
2016/06/07 Python
python 与GO中操作slice,list的方式实例代码
2017/03/20 Python
Python实现Linux的find命令实例分享
2017/06/04 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
对Python中的条件判断、循环以及循环的终止方法详解
2019/02/08 Python
解决Python二维数组赋值问题
2019/11/28 Python
浅谈pytorch池化maxpool2D注意事项
2020/02/18 Python
解决python调用自己文件函数/执行函数找不到包问题
2020/06/01 Python
Python学习工具jupyter notebook安装及用法解析
2020/10/23 Python
Python实现简单的2048小游戏
2021/03/01 Python
HTML5 实战PHP之Web页面表单设计
2011/10/09 HTML / CSS
Superdry瑞典官网:英国日本街头风品牌
2017/05/17 全球购物
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
退休教师欢送会主持词
2014/03/31 职场文书
医院党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
七年级数学教学反思
2016/02/17 职场文书