之前做項目的時候遇到過一個日期轉化的問題,一個日期控件和近一天,近七天和近一月的的聯動效果。發現自己不會,后來就百度了一下解決了這個問題
現在抽空又寫了一個時間轉化的案例(計算一周的日期),因為之前面試遇到過所以現在就順手拿出來練練,並且封裝了時間格式轉化的方法。
```
const DAYS = 7 ;
var weeks = ''
for (var i = 0; i < DAYS; i++) {
var day = (new Date()).getTime() - 1000*3600*24*i
weeks = weeks+'<span>'+(new Date(day)).Format('yyyy-MM-dd')+'</span><br/>'
}
document.getElementById('weeks').innerHTML = weeks
//格式化時間
Date.prototype.Format = function (fmt) {
if(/(y+)/.test(fmt)){
fmt = fmt.replace(RegExp.$1,this.getFullYear()+'').substr(4-RegExp.$1.length);
}
var o = {
'M+' : this.getMonth()+1,
'd+' : this.getDate() ,
'h+' : this.getHours(),
's+' : this.getSeconds()
}
for (var k in o) {
if(new RegExp(`(${k})`).test(fmt)){
var str = o[k]+'' ;
fmt = fmt.replace(RegExp.$1,RegExp.$1.length ==1?str:('00'+str).substr(str.length))
}
}
return fmt;
}
```
