你瞅啥呢

2024-10-29 使用dayjs获取周一时间不正确

dayjs获取周一代码为:

dayjs().startOf('week').format('YYYY-MM-DD')

但是为什么获取到的周一日期为27呢?

原因:startOf('week')默认认为周日是一周开始的第一天,而不是周一才是第一天

嗯.......国外第一天都是周日吗?搞不懂

解决方案:手动调整

    // 获取当前日期
    const now = dayjs();
    // 获取本周开始日期(周一)
    // 获取当前日期是周几(0 表示周日,1 表示周一,以此类推)
    const dayOfWeek = now.day();
    // 计算从当前日期到周一的天数差
    const diff = dayOfWeek === 0 ? -6 : 1 - dayOfWeek;
    // 获取本周的周一日期
    const startOfWeek = now.add(diff, 'day').startOf('day');

 

posted @ 2024-10-29 16:17  叶乘风  阅读(155)  评论(0编辑  收藏  举报