你好,js中Date类没有直接格式化的方法,所以需要自己写,你只需将下列代码在格式化前加入,即可使用。代码摘自http://www.jb51.net/article/22657.htm。使用方法如下:new Date().format('yyyyMMdd')
Date.prototype.format = function(format){var o = {
"M+" : this.getMonth()+1, //month
"d+" : this.getDate(), //day
"h+" : this.getHours(), //hour
"m+" : this.getMinutes(), //minute
"s+" : this.getSeconds(), //second
"q+" : Math.floor((this.getMonth()+3)/3), //quarter
"S" : this.getMilliseconds() //millisecond
}
if(/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.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
}
vardependedVal="2005-3-4"
//根据日期字符串转换成日期
var
regEx
=
new
RegExp("\\-","gi")
dependedVal=dependedVal.replace(regEx,"/")
//dependedVal=dependedVal.replace("\\-","/")//这样不行
alert(dependedVal)
//parse
需要
2005/3/4
这种格式!法克!
var
milliseconds=Date.parse(dependedVal)
alert(milliseconds)
var
dependedDate=new
Date()
dependedDate.setTime(milliseconds)
var
now
=
new
Date()
//注意括号,优先级问题,无奈
alert("相隔年数:"+(now.getFullYear()
-
dependedDate.getFullYear()))