js获取日期是今年的第几周
export function getWeeksOfYear(date: string | number | Date) {
let dateTimeNow: any = new Date(date);
const year = dateTimeNow.getFullYear();
let dateTime: any = new Date(year, 0, 1, 0, 0, 0);
let adjustd;
if (dateTime.getDay() === 0) {
adjustd = 1;
} else {
adjustd = 8 - dateTime.getDay();
}
dateTime = dateTime.setDate(dateTime.getDate() + adjustd); // 获取元旦后第一个周一0点的时间
dateTime = new Date(dateTime);
dateTimeNow = dateTimeNow.setDate(dateTimeNow.getDate());
// 毫秒,所以要多除1000
let sweek: any = parseInt(`${(dateTimeNow - dateTime) / 1000 / (86400 * 7)}`, 10) + 2;
if (sweek < 10) {
sweek = `0${sweek}`;
}
return sweek;
}
使用实例:
getWeeksOfYear('2024-01-07') // 02