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 学习笔记
Mar 05 Javascript
js用Date对象的setDate()函数对日期进行加减操作
Sep 18 Javascript
基于jQuery实现最基本的淡入淡出效果实例
Feb 02 Javascript
JavaScript获取一个范围内日期的方法
Apr 24 Javascript
jquery对象和DOM对象的任意相互转换
Feb 21 Javascript
浅析JS获取url中的参数实例代码
Jun 14 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
Sep 27 Javascript
浅谈vue.js导入css库(elementUi)的方法
Mar 09 Javascript
vue中接口域名配置为全局变量的实现方法
Sep 20 Javascript
浅谈js闭包理解
Mar 28 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
Nov 05 Javascript
Vue 3自定义指令开发的相关总结
Jan 29 Vue.js
利用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
WAR3重制版DOTA 5V5初体验
2020/04/09 DOTA
Laravel 5框架学习之子视图和表单复用
2015/04/09 PHP
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
Prototype Number对象 学习
2009/07/19 Javascript
js获取图片长和宽度的代码
2009/11/24 Javascript
E3 tree 1.6在Firefox下显示问题的修复方法
2013/01/30 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
深入理解Javascript里的依赖注入
2014/03/19 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
详解基于Angular4+ server render(服务端渲染)开发教程
2017/08/28 Javascript
Angularjs添加排序查询功能的实例代码
2017/10/24 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
如何对react hooks进行单元测试的方法
2019/08/14 Javascript
uni app仿微信顶部导航条功能
2019/09/17 Javascript
element-ui table组件如何使用render属性的实现
2019/11/04 Javascript
vue-cli3中配置alias和打包加hash值操作
2020/09/04 Javascript
在Vue中使用CSS3实现内容无缝滚动的示例代码
2020/11/27 Vue.js
[37:21]完美世界DOTA2联赛PWL S2 Inki vs Magma 第二场 11.22
2020/11/24 DOTA
[03:01]完美世界DOTA2联赛PWL S2 集锦第二期
2020/12/03 DOTA
运用TensorFlow进行简单实现线性回归、梯度下降示例
2018/03/05 Python
Python函数any()和all()的用法及区别介绍
2018/09/14 Python
Python sklearn KFold 生成交叉验证数据集的方法
2018/12/11 Python
Django中的cookie和session
2019/08/27 Python
python文件操作的简单方法总结
2019/11/07 Python
Clarins娇韵诗英国官网:来自法国的天然护肤品牌
2017/04/18 全球购物
一套带网友答案的.NET笔试题
2016/12/06 面试题
js实现弹框效果
2021/03/24 Javascript
文员自我评价怎么写
2013/09/19 职场文书
合伙经营协议书
2014/04/18 职场文书
法定代表人授权委托书范本
2014/10/07 职场文书
技术负责人岗位职责
2015/02/10 职场文书
2015年体育部工作总结
2015/04/02 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
mysql部分操作
2021/04/05 MySQL
JavaScript中document.activeELement焦点元素介绍
2021/11/27 Javascript