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 相关文章推荐
js文本框输入点回车触发确定兼容IE、FF等
Nov 19 Javascript
JQuery勾选指定name的复选框集合并显示的方法
May 18 Javascript
基于JavaScript怎么实现让歌词滚动播放
Nov 03 Javascript
分享12个非常实用的JavaScript小技巧
May 11 Javascript
JS检测页面中哪个HTML标签触发点击事件的方法
Jun 17 Javascript
清除js缓存的多种方法总结
Dec 09 Javascript
微信小程序 地图map详解及简单实例
Jan 10 Javascript
Javascript DOM事件操作小结(监听鼠标点击、释放,悬停、离开等)
Jan 20 Javascript
BootStrap 获得轮播中的索引和当前活动的焦点对象
May 11 Javascript
js登录滑动验证的实现(不滑动无法登陆)
Jan 03 Javascript
使用vue-cli编写vue插件的方法
Feb 26 Javascript
如何为vue的项目添加单元测试
Dec 19 Javascript
利用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
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
2013/06/18 PHP
微信API接口大全
2015/04/15 PHP
nginx+thinkphp下解决不支持pathinfo模式
2015/07/01 PHP
php 后端实现JWT认证方法示例
2018/09/04 PHP
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
轻松创建nodejs服务器(5):事件处理程序
2014/12/18 NodeJs
AngularJS基础 ng-non-bindable 指令详细介绍
2016/08/02 Javascript
BootStrap下拉菜单和滚动监听插件实现代码
2016/09/26 Javascript
jQuery中 $ 符号的冲突问题及解决方案
2016/11/04 Javascript
node安装--linux下的快速安装教程
2017/03/21 Javascript
vue.js父组件使用外部对象的方法示例
2017/04/25 Javascript
Vue的MVVM实现方法
2017/08/16 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
2017/12/29 Javascript
浅谈如何使用webpack构建多页面应用
2018/05/30 Javascript
javascript实现弹出层效果
2019/12/10 Javascript
JavaScript前后端JSON使用方法教程
2020/11/23 Javascript
[01:10:16]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第一局
2016/02/27 DOTA
python连接池实现示例程序
2013/11/26 Python
Python 实现链表实例代码
2017/04/07 Python
pandas每次多Sheet写入文件的方法
2018/12/10 Python
pandas去重复行并分类汇总的实现方法
2019/01/29 Python
python 发送json数据操作实例分析
2019/10/15 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
使用HTML5 Canvas API控制字体的显示与渲染的方法
2016/03/24 HTML / CSS
十佳教师事迹材料
2014/01/11 职场文书
幼儿园大班开学寄语
2014/08/02 职场文书
实习协议书范本
2014/09/25 职场文书
2014年医德医风工作总结
2014/11/13 职场文书
2015年敬老月活动总结
2015/03/27 职场文书
公司财务经理岗位职责
2015/04/08 职场文书
运动员加油词
2015/07/18 职场文书
pycharm无法导入lxml的解决办法
2021/03/31 Python
使用scrapy实现增量式爬取方式
2022/06/21 Python