之前做项目的时候遇到过一个日期转化的问题,一个日期控件和近一天,近七天和近一月的的联动效果。发现自己不会,后来就百度了一下解决了这个问题
现在抽空又写了一个时间转化的案例(计算一周的日期),因为之前面试遇到过所以现在就顺手拿出来练练,并且封装了时间格式转化的方法。
```
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;
}
```