全面兼容的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>
本文地址:https://www.stayed.cn/item/7033
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我