全面兼容的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 相关文章推荐
Js callBack 返回前一页的js方法
Nov 30 Javascript
javascrip客户端验证文件大小及文件类型并重置上传
Jan 12 Javascript
JavaScript 基础篇(一)
Mar 30 Javascript
利用js(jquery)操作Cookie的方法说明
Dec 19 Javascript
js判断浏览器类型及设备(移动页面开发)
Jul 30 Javascript
javascript中递归的两种写法
Jan 17 Javascript
canvas绘制的直线动画
Jan 23 Javascript
js replace 全局替换的操作方法
Jun 12 Javascript
解决vue v-for src 图片路径问题 404
Nov 12 Javascript
webpack的 rquire.context用法实现工程自动化的方法
Feb 07 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
Jul 17 Javascript
vue - props 声明数组和对象操作
Jul 30 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原理
2007/03/28 PHP
Eclipse的PHP插件PHPEclipse安装和使用
2014/07/20 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
2015/01/30 PHP
jQuery 使用个人心得
2009/02/26 Javascript
jQuery UI AutoComplete 自动完成使用小记
2010/08/21 Javascript
Javascript 面向对象(一)(共有方法,私有方法,特权方法)
2012/05/23 Javascript
JavaScript实现复制功能各浏览器支持情况实测
2013/07/18 Javascript
多种方法实现load加载完成后把图片一次性显示出来
2014/02/19 Javascript
node.js中的path.normalize方法使用说明
2014/12/08 Javascript
jQuery选择器querySelector的使用指南
2015/01/23 Javascript
JS实现网站菜单拖拽移位效果的方法
2015/09/24 Javascript
JS模拟酷狗音乐播放器收缩折叠关闭效果代码
2015/10/29 Javascript
Bootstrap弹出带合法性检查的登录框实例代码【推荐】
2016/06/23 Javascript
正则表达式,替换所有HTML标签的简单实例
2016/11/28 Javascript
JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)
2017/01/06 Javascript
vue loadmore 组件滑动加载更多源码解析
2017/07/19 Javascript
如何理解Vue的作用域插槽的实现原理
2017/08/19 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
Vue项目vscode 安装eslint插件的方法(代码自动修复)
2020/04/15 Javascript
JavaScript Event Loop相关原理解析
2020/06/10 Javascript
Python中条件选择和循环语句使用方法介绍
2013/03/13 Python
Python设计模式之观察者模式实例
2014/04/26 Python
python访问mysql数据库的实现方法(2则示例)
2016/01/06 Python
Python抓取手机号归属地信息示例代码
2016/11/28 Python
Python实现希尔排序算法的原理与用法实例分析
2017/11/23 Python
利用Python2下载单张图片与爬取网页图片实例代码
2017/12/25 Python
Linux(Redhat)安装python3.6虚拟环境(推荐)
2018/05/05 Python
python实现月食效果实例代码
2019/06/18 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
在Python中使用K-Means聚类和PCA主成分分析进行图像压缩
2020/04/10 Python
python神经网络编程实现手写数字识别
2020/05/27 Python
室内设计实习自我鉴定
2013/09/25 职场文书
观看《周恩来的四个昼夜》思想汇报
2014/09/12 职场文书
门店店长岗位职责
2015/04/14 职场文书
党小组意见范文
2015/06/08 职场文书
分享提高 Python 代码的可读性的技巧
2022/03/03 Python