js 获取当天时间,实现展示包含今天的一周时间
最近写了一个关于需要时间预约的项目,记录一下如何 实现未来一周数据的处理,时间的展示
封装获得第n天的时间数据
为了代码的可复用我将他封装进了一个方法
通过调用本方法,向方法传参(哪一天,如今天是0,明天是1依次类推)就可得到当天时间数据,具体如下:
js代码
getdatet: function(e) {
var date = new Date();//获取当天日期
var timestamp = date.valueOf(); //获取当前毫秒的时间戳,准确!
var tdateta = timestamp + (3600 * 24 * 1000 * e);//从今天开始的第n天,今天为0,明天为1依次类推
var ty = new Date(tdateta).getFullYear();//当天的年
var tm = new Date(tdateta).getMonth() + 1;//当天的月
var td = new Date(tdateta).getDate();//当天的日期
var tw = new Date(tdateta).getDay();//当天的周
if (tm < 10) {
tm = '0' + tm;
}//如当天月小于10拼接一个0
if (td < 10) {
td = "0" + td;
}//如当天日期 小于10拼接一个0
var weekb = [
'周日', '周一', '周二', '周三', '周四', '周五', '周六'
];
var tymd = '' + ty + tm + td;
var dayobj = {
id: tw,//周(1,2,3,4,5,6,0)0是周日
week: weekb[tw],//文字周几
date: td,//当天日期
subscribe: tymd//日期格式后端要20210905
};
return dayobj
},
上述方法可以得到一个对象包含当天周,日期,以及年月日
有不同需求的小伙伴也可以修改下使用
循环得到未来n天的时间数据
需要七天的可以直接循环调用
插入一个新数组这样就得到一周的数据
data() {
return {
selected_date: [{
id: 1,
week: '周一',
date: '',
subscribe: ''
},
{
id: 2,
week: '周二',
date: '',
subscribe: ''
},
{
id: 3,
week: '周三',
date: '',
subscribe: ''
},
{
id: 4,
week: '周四',
date: '',
subscribe: ''
},
{
id: 5,
week: '周五',
date: '',
subscribe: ''
},
{
id: 6,
week: '周六',
date: '',
subscribe: ''
},
{
id: 0,
week: '周日',
date: '',
subscribe: ''
}
]
}
},
onLoad(){
for (let i = 0; i < 7; i++) {//需要几天可以循环几天
theday = that.getdatet(i);
that.selected_date[i] = theday;
}
}