一年的第一周属于十二月?

First week of the year belongs in December?

我在 js 中有一个小方法,如下所示:

const getSelectWeekText = (weekNumber, year) => {
        let date = moment().year(year).week(weekNumber);
        let month = date.format('MMMM');

        return `Week ${weekNumber} (${month})`;
    };

运行 此处示例: https://jsfiddle.net/472uoLg8/

我不明白为什么结果中的第一项是十二月?我预计是一月份。

因为不同的地区定义一年中的星期数不同,Moment.js 将 moment#week 添加到 get/set 一年中的本地化星期。

使用moment().isoWeek(weekNumber);

const getSelectWeekText = (weekNumber, year) => {
        let date = moment().year(year).isoWeek(weekNumber);
        let month = date.format('MMMM');

        return `Week ${weekNumber} (${month})`;
    };

参考https://momentjs.com/docs/#/get-set/week/.