源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 61|回复: 18

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

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2014-5-14 09:28:14 | 显示全部楼层 |阅读模式
这篇文章主要介绍了全面兼容比较实用的javascript时间格式化函数,需要的朋友可以参考下 全面兼容的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>
回复

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-8-12 17:14:45 | 显示全部楼层
看看看看看看看看看看看看看看看看看看看看看看看看看看看
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-8-23 04:59:38 | 显示全部楼层
66666666666666666666
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

124

积分

注册会员

Rank: 2

积分
124
发表于 2022-9-4 02:40:22 | 显示全部楼层
问问问企鹅哇哇哇哇哇
回复 支持 反对

使用道具 举报

12

主题

2万

回帖

431

积分

中级会员

Rank: 3Rank: 3

积分
431
发表于 2022-10-27 09:38:11 | 显示全部楼层
啦啦啦啦啦啦啦啦!
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2023-6-12 21:48:34 | 显示全部楼层
66666666666
回复 支持 反对

使用道具 举报

5

主题

2万

回帖

183

积分

注册会员

Rank: 2

积分
183
发表于 2023-7-6 18:57:40 | 显示全部楼层
天天源码论坛
回复 支持 反对

使用道具 举报

29

主题

2万

回帖

194

积分

注册会员

Rank: 2

积分
194
发表于 2023-12-3 07:29:21 | 显示全部楼层
很不错的玩意
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

120

积分

注册会员

Rank: 2

积分
120
发表于 2023-12-9 02:20:57 | 显示全部楼层
看看看看看看看看看看看看看看看看看看看看看看看看看看看
回复 支持 反对

使用道具 举报

3

主题

2万

回帖

301

积分

中级会员

Rank: 3Rank: 3

积分
301
发表于 2024-3-2 02:51:19 | 显示全部楼层
看看看看
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-30 05:44 , Processed in 0.167364 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表