全面兼容的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 常用方法基础教程
Feb 06 Javascript
js 得到文件后缀(通过正则实现)
Jul 08 Javascript
js hover 定时器(实例代码)
Nov 12 Javascript
原生javascript获取元素样式
Dec 31 Javascript
JavaScript实现级联菜单的方法
Jun 29 Javascript
浅谈JavaScript中指针和地址
Jul 26 Javascript
jquery uploadify如何取消已上传成功文件
Feb 08 Javascript
javascript中的隐式调用
Feb 10 Javascript
使用proxy实现一个更优雅的vue【推荐】
Jun 19 Javascript
JQuery判断radio单选框是否选中并获取值的方法
Jan 17 jQuery
详解Puppeteer前端自动化测试实践
Feb 21 Javascript
原生JS封装拖动验证滑块的实现代码示例
Jun 01 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中限制IP段访问、禁止IP提交表单的代码
2011/04/23 PHP
php上传apk后自动提取apk包信息的使用(示例下载)
2013/04/26 PHP
PHP自定义序列化接口Serializable用法分析
2017/12/29 PHP
改进UCHOME的记录发布,增强可访问性用户体验
2011/01/17 Javascript
JavaScript通过正则表达式实现表单验证电话号码
2014/03/07 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
基于jquery实现简单的分页控件
2016/03/17 Javascript
Select下拉框模糊查询功能实现代码
2016/07/22 Javascript
JS数组去重(4种方法)
2017/03/27 Javascript
React 使用browserHistory项目访问404问题解决
2018/06/01 Javascript
vue组件实现进度条效果
2018/06/06 Javascript
JavaScript实现仿Clock ISO时钟
2018/06/29 Javascript
NodeJs项目中关闭ESLint的方法
2018/08/09 NodeJs
Vue中mintui的field实现blur和focus事件的方法
2018/08/25 Javascript
浅谈layer的Icon样式以及一些常用的layer窗口使用方法
2019/09/11 Javascript
vue计算属性无法监听到数组内部变化的解决方案
2019/11/06 Javascript
[02:11]2016国际邀请赛中国区预选赛最美TA采访现场玩家
2016/06/28 DOTA
Python开发实例分享bt种子爬虫程序和种子解析
2014/05/21 Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
2014/11/18 Python
python Django框架实现自定义表单提交
2016/03/25 Python
python 循环遍历字典元素的简单方法
2016/09/11 Python
Python优先队列实现方法示例
2017/09/21 Python
Django中间件工作流程及写法实例代码
2018/02/06 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
Python实现替换文件中指定内容的方法
2018/03/19 Python
如何在VSCode上轻松舒适的配置Python的方法步骤
2019/10/28 Python
无畏的旅行:Intrepid Travel
2017/12/20 全球购物
XD健身器材:Kevlar球、Crossfit健身球
2019/03/26 全球购物
暑假家长评语大全
2014/04/17 职场文书
优秀应届本科生求职信
2014/07/19 职场文书
“六查”、“三学”、“三干”查摆问题整改措施
2014/09/27 职场文书
2014年电教工作总结
2014/12/19 职场文书
大学考试作弊检讨书
2015/05/06 职场文书
《蟋蟀的住宅》教学反思
2016/02/17 职场文书
关于flex 上下文中自动 margin的问题(完整例子)
2021/05/20 HTML / CSS
python在package下继续嵌套一个package
2022/04/14 Python