全面兼容的javascript时间格式化函数(比较实用)


Posted in Javascript onMay 14, 2014

全面兼容的javascript时间格式化函数,实用总结!

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8" /> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>js日期格式化</title> 
<script language="javascript" type="text/javascript"> 
/* 
* 时间格式化 
* strDateTime:需要格式化的字符串时间 
* intType:格式化类型 
*/ 
function formatDateTime(strDateTime, intType) { 
var years, month, days, hours, minutes, seconds; 
var newDate, arrDate = new Array(), arrTime = new Array(); 
try { 
if (strDateTime != undefined && strDateTime != null && strDateTime != "") { 
//获取日期和时间数组 
if (strDateTime.indexOf("-") != -1) { 
var item = strDateTime.split(" "); 
arrDate = item[0].toString().split("-"); 
arrTime = item[1].toString().split(":"); 
} else if (strDateTime.indexOf("/") != -1) { 
var item = strDateTime.split(" "); 
arrDate = item[0].toString().split("/"); 
arrTime = item[1].toString().split(":"); 
} 

//处理数据 
if (arrDate != undefined && arrTime != undefined 
&& arrDate.length == 3 && arrTime.length == 3) { 
newDate = new Date( 
parseInt(arrDate[0]), 
parseInt(arrDate[1]), 
parseInt(arrDate[2]), 
parseInt(arrTime[0]), 
parseInt(arrTime[1]), 
parseInt(arrTime[2]) 
); 

switch (Number(intType)) { 
case 1: //格式:yyyy-MM-dd 
years = newDate.getFullYear(); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

newDate = years + "-" + month + "-" + days; 
break; 
case 2: //格式:MM-dd HH:mm 
month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

newDate = month + "-" + days + 
" " + hours + ":" + minutes; 
break; 
case 3: //格式:HH:mm:ss 
hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

seconds = newDate.getSeconds(); 
if (Number(seconds) < 10) seconds = "0" + seconds; 

newDate = hours + ":" + minutes + ":" + seconds; 
break; 
case 4: //格式:HH:mm 
hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

newDate = hours + ":" + minutes; 
break; 
case 5: //格式:yyyy-MM-dd HH:mm 
years = newDate.getFullYear(); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

newDate = years + "-" + month + "-" + days + 
" " + hours + ":" + minutes; 
break; 
case 6: //格式:yyyy/MM/dd 
years = newDate.getFullYear(); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

newDate = years + "/" + month + "/" + days; 
break; 
case 7: //格式:MM/dd HH:mm 
month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

newDate = month + "/" + days + 
" " + hours + ":" + minutes; 
break; 
case 8: //格式:yyyy/MM/dd HH:mm 
years = newDate.getFullYear(); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

newDate = years + "/" + month + "/" + days + 
" " + hours + ":" + minutes; 
break; 
case 9: //格式:yy-MM-dd 
years = newDate.getFullYear(); 
years = years.toString().substr(2, 2); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

newDate = years + "-" + month + "-" + days; 
break; 
case 10: //格式:yy/MM/dd 
years = newDate.getFullYear(); 
years = years.toString().substr(2, 2); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

newDate = years + "/" + month + "/" + days; 
break; 
case 11: //格式:yyyy年MM月dd hh时mm分 
years = newDate.getFullYear(); 

month = newDate.getMonth(); 
if (Number(month) < 10) month = "0" + month; 

days = newDate.getDate(); 
if (Number(days) < 10) days = "0" + days; 

hours = newDate.getHours(); 
if (Number(hours) < 10) hours = "0" + hours; 

minutes = newDate.getMinutes(); 
if (Number(minutes) < 10) minutes = "0" + minutes; 

newDate = years + "年" + month + "月" + days + 
" " + hours + "时" + minutes + "分"; 
break; 
} 
} 
} 
} catch (e) { 
newDate = new Date(); 

return newDate.getFullYear() + "-" + 
(newDate.getMonth() + 1) + "-" + 
newDate.getDate() + " " + 
newDate.getHours() + ":" + 
newDate.getMinutes() + ":" + 
newDate.getSeconds(); 
} 

return newDate; 
} 
</script> 
</head> 
<body> 
<script language="javascript" type="text/javascript"> 
//调用 
document.writeln(formatDateTime("2014/04/16 22:34:45", 11)); 
</script> 
</body> 
</html>
Javascript 相关文章推荐
jquery 查找新建元素代码
Jul 06 Javascript
选择复选框按钮置灰否则按钮可用
May 22 Javascript
JavaScript知识点整理
Dec 09 Javascript
JS身份证信息验证正则表达式
Jun 12 Javascript
js中如何完美的解析数据
Mar 18 Javascript
Node.js引入UIBootstrap的方法示例
May 11 Javascript
Angularjs之ngModel中的值验证绑定方法
Sep 13 Javascript
javascript实现考勤日历功能
Nov 29 Javascript
webpack4 SplitChunks实现代码分隔详解
May 23 Javascript
在 Vue 应用中使用 Netlify 表单功能的方法详解
Jun 03 Javascript
vue $set 给数据赋值的实例
Nov 09 Javascript
一文了解JavaScript用Element Traversal新属性遍历子元素
Nov 27 Javascript
js实现图片拖动改变顺序附图
May 13 #Javascript
javascript判断是否按回车键并解决浏览器之间的差异
May 13 #Javascript
js加密解密字符串可自定义密码因子
May 13 #Javascript
JavaScript用Number方法实现string转int
May 13 #Javascript
javascript中expression的用法整理
May 13 #Javascript
JS函数重载的解决方案
May 13 #Javascript
一个JS函数搞定网页标题(title)闪动效果
May 13 #Javascript
You might like
php实现可以设置中奖概率的抽奖程序代码分享
2014/01/19 PHP
ThinkPHP实例化模型的四种方法概述
2014/08/22 PHP
php生成excel列名超过26列大于Z时的解决方法
2014/12/29 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
2015/08/18 PHP
PHP 模拟登陆功能实例详解
2019/09/10 PHP
php数值计算num类简单操作示例
2020/05/15 PHP
简略说明Javascript中的= =(等于)与= = =(全等于)区别
2013/04/16 Javascript
jQuery中的siblings用法实例分析
2015/12/24 Javascript
浅谈javascript中new操作符的原理
2016/06/07 Javascript
JavaScript中的this使用详解
2016/07/27 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
2017/04/12 Javascript
简单实现js点击展开二级菜单功能
2017/05/16 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
2017/07/10 Javascript
vue中eventbus被多次触发以及踩过的坑
2017/12/02 Javascript
vue.js实现只弹一次弹框
2018/01/29 Javascript
elementUI select组件默认选中效果实现的方法
2019/03/25 Javascript
Vue中computed和watch有哪些区别
2020/12/19 Vue.js
[02:38]DOTA2亚洲邀请赛 IG战队巡礼
2015/02/03 DOTA
python使用代理ip访问网站的实例
2018/05/07 Python
关于Django ForeignKey 反向查询中filter和_set的效率对比详解
2018/12/15 Python
详解Python网络框架Django和Scrapy安装指南
2019/04/01 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
Python imutils 填充图片周边为黑色的实现
2020/01/19 Python
Python callable内置函数原理解析
2020/03/05 Python
VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
2021/03/02 Python
聪明的粉丝购买门票的地方:TickPick
2018/03/09 全球购物
澳大利亚女装精品店:Alannah Hill
2020/07/29 全球购物
过滤器的用法
2013/10/08 面试题
农田水利实习自我鉴定
2013/09/19 职场文书
父亲节寄语大全
2015/02/27 职场文书
在校生证明
2015/06/17 职场文书
交通安全教育主题班会
2015/08/12 职场文书
nginx常用命令放入shell脚本详解
2021/03/31 Servers
Python3中最常用的5种线程锁实例总结
2021/07/07 Python
MySQL 聚合函数排序
2021/07/16 MySQL
VS2019连接MySQL数据库的过程及常见问题总结
2021/11/27 MySQL