JavaScript实现CST格式时间字符串转换成指定日期格式:
<html>
<body>
<script type="text/javascript">
// CST格式的时间String转换成指定日期格式String
dateFormat = function (date, format) {
date = new Date(date);
var o = {
'M+' : date.getMonth() + 1, //month
'd+' : date.getDate(), //day
'H+' : date.getHours(), //hour
'm+' : date.getMinutes(), //minute
's+' : date.getSeconds(), //second
'S' : date.getMilliseconds() //millisecond
};
if (/(y+)/.test(format))
format = format.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp('(' + k + ')').test(format))
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));
return format;
}
var date_str1 = 'Wed Nov 20 10:45:34 CST 2019';
var date_str2 = new Date();
var date_str = "</br>01: " + date_str1 + " => " + dateFormat(date_str1,'yyyy-MM-dd HH:mm:ss');
document.write(date_str);
//alert(date_str);
date_str = "</br>02: " + date_str2 + " => " + dateFormat(date_str2,'yyyy-MM-dd HH:mm:ss');
document.write(date_str);
//alert(date_str);
/* CST转换成UTC
UTC:协调世界时,简称UTC,英文“Coordinated Universal Time”。
CST:CST可视为中国、美国、澳大利亚或古巴的标准时间。CST可以为如下4个不同的时区的缩写:
中国标准时间:China Standard Time UT+8:00
美国中部时间:Central Standard Time (USA) UT-6:00
澳大利亚中部时间:Central Standard Time (Australia) UT+9:30
古巴标准时间:Cuba Standard Time UT-4:00
*/
document.write('</br>03: toUTCString: ' + date_str2.toUTCString()); //根据世界时,把 Date 对象转换为字符串。
//其他常用转换函数
document.write('</br>04: toDateString: ' + date_str2.toDateString()); //把Date对象的日期部分转换为字符串。结果:
document.write('</br>05: toISOString: ' + date_str2.toISOString()); //使用ISO标准返回字符串的日期格式。结果:
document.write('</br>06: toJSON: ' + date_str2.toJSON()); //以 JSON 数据格式返回日期字符串。结果:
document.write('</br>07: toLocaleDateString: ' + date_str2.toLocaleDateString()); //根据本地时间格式,把 Date 对象的日期部分转换为字符串。
document.write('</br>08: toLocaleTimeString: ' + date_str2.toLocaleTimeString()); //根据本地时间格式,把 Date 对象的时间部分转换为字符串。
document.write('</br>09: toLocaleString: ' + date_str2.toLocaleString()); //据本地时间格式,把 Date 对象转换为字符串。
document.write('</br>10: toString: ' + date_str2.toString()); //把 Date 对象转换为字符串。
document.write('</br>11: toTimeString: ' + date_str2.toTimeString()); //把 Date 对象的时间部分转换为字符串。
//document.write('</br>12: UTC: ' + Date.UTC(2019,11,20,12,50,10)); //根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。Date.UTC(year,month,day,hours,minutes,seconds,millisec)
document.write('</br>12: UTC: ' + Date.UTC(date_str2.getFullYear(),date_str2.getMonth(),date_str2.getDate(),date_str2.getHours(),date_str2.getMinutes(),date_str2.getSeconds(),date_str2.getMilliseconds())); //根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。Date.UTC(year,month,day,hours,minutes,seconds,millisec)
document.write('</br>13: valueOf: ' + date_str2.valueOf()); //返回 Date 对象的原始值。
//其他更多的JavaScript的Date处理相关函数,可以参考:https://www.runoob.com/jsref/jsref-obj-date.html
/* 结果:
01: Wed Nov 20 10:45:34 CST 2019 => 2019-11-21 00:45:34
02: Wed Nov 20 2019 12:49:54 GMT+0800 (中国标准时间) => 2019-11-20 12:49:54
03: toUTCString: Wed, 20 Nov 2019 04:49:54 GMT
04: toDateString: Wed Nov 20 2019
05: toISOString: 2019-11-20T04:49:54.718Z
06: toJSON: 2019-11-20T04:49:54.718Z
07: toLocaleDateString: 2019/11/20
08: toLocaleTimeString: 下午12:49:54
09: toLocaleString: 2019/11/20 下午12:49:54
10: toString: Wed Nov 20 2019 12:49:54 GMT+0800 (中国标准时间)
11: toTimeString: 12:49:54 GMT+0800 (中国标准时间)
12: UTC: 1574254194718
13: valueOf: 1574225394718
*/
</script>
</body>
</html>