js字符串转换成时间
1.1输入的时间格式为yyyy-MM-dd
function convertDateFromString(dateString) {
if (dateString) {
var date = new Date(dateString.replace(/-/,"/"))
return date;
}
}
1.2输入的时间格式为yyyy-MM-dd hh:mm:ss
function convertDateFromString(dateString) {
if (dateString) {
var arr1 = dateString.split(" ");
var sdate = arr1[0].split('-');
var date = new Date(sdate[0], sdate[1]-1, sdate[2]);
return date;
}
}
时间转换成字符串
2.1 对Date的扩展,将 Date 转化为指定格式的String
月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) 例子:
(new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
(new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
Date
.prototype
.Format
= function
(fmt
) {
var o
= {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math
.floor((this.getMonth() + 3) / 3),
"S": this.getMilliseconds()
};
if (/(y
+)/.test(fmt
))
fmt
= fmt
.replace(RegExp
.$
1, (this.getFullYear() + "").substr(4 - RegExp
.$
1.length
));
for (var k in o
){
if (new RegExp("(" + k
+ ")").test(fmt
)) {
fmt
= fmt
.replace(RegExp
.$
1, (RegExp
.$
1.length
== 1) ? (o
[k
]) : (("00" + o
[k
]).substr(("" + o
[k
]).length
)));
}
}
return fmt
;
}
调用:var time1 = new Date().Format(“yyyy-MM-dd”); var time2 = new Date().Format(“yyyy-MM-dd HH:mm:ss”);
2.2可以显示星期
<script language
="javascript" type
="text/javascript">
<!--
Date
.prototype
.pattern
=function(fmt
) {
var o
= {
"M+" : this.getMonth()+1,
"d+" : this.getDate(),
"h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12,
"H+" : this.getHours(),
"m+" : this.getMinutes(),
"s+" : this.getSeconds(),
"q+" : Math
.floor((this.getMonth()+3)/3),
"S" : this.getMilliseconds()
};
var week
= {
"0" : "/u65e5",
"1" : "/u4e00",
"2" : "/u4e8c",
"3" : "/u4e09",
"4" : "/u56db",
"5" : "/u4e94",
"6" : "/u516d"
};
if(/(y
+)/.test(fmt
)){
fmt
=fmt
.replace(RegExp
.$
1, (this.getFullYear()+"").substr(4 - RegExp
.$
1.length
));
}
if(/(E
+)/.test(fmt
)){
fmt
=fmt
.replace(RegExp
.$
1, ((RegExp
.$
1.length
>1) ? (RegExp
.$
1.length
>2 ? "/u661f/u671f" : "/u5468") : "")+week
[this.getDay()+""]);
}
for(var k in o
){
if(new RegExp("("+ k
+")").test(fmt
)){
fmt
= fmt
.replace(RegExp
.$
1, (RegExp
.$
1.length
==1) ? (o
[k
]) : (("00"+ o
[k
]).substr((""+ o
[k
]).length
)));
}
}
return fmt
;
}
调用: var date = new Date(); window.alert(date.pattern(“yyyy-MM-dd hh:mm:ss”));