做之前以为很难,其实很简单。需要对js操作时间的方法熟悉一些。
代码:
getCurrentDate() {
let now = new Date();
this.dayLength = getDayNum();
for (let i = 1; i <= this.dayLength; i++) {
let nowDate = now.setDate(i);
const {year, month, day} = formatDate(nowDate);
let everyDay = year + '-' + month + '-' + day;
let week = getWeek(everyDay)
this.currentMonth.push({date: month + '-' + day, week: week})
}
}
获取当月总天数
function getDayNum() {
let date = new Date();
let year = date.getFullYear();
let month = date.getMonth() + 1;
let d = new Date(year, month, 0);
return d.getDate();
}
将日期转成yyyy-MM-dd形式
function formatDate(date) {
date = new Date(date);
let myyear = date.getFullYear();
let mymonth = date.getMonth() + 1;
let myweekday = date.getDate();
mymonth < 10 ? mymonth = "0" + mymonth : mymonth;
myweekday < 10 ? myweekday = "0" + myweekday : myweekday;
return {
year: myyear,
month: mymonth,
day: myweekday
};
}
获取当天是星期几
function getWeek(date) {
let dt2 = new Date(date);
var weekDay = ["星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
if (weekDay.indexOf(weekDay[dt2.getDay()]) > -1) {
return weekDay[dt2.getDay()]
}
return ''
}
over