使用momentJs,可以根据Locale获取一周的第一天(星期一(1),星期日(7)......)而不创建新时刻?
我知道我可以通过以下方式访问当前语言环境的第一天:
moment.locale('uk');
moment().startOf('week').isoWeekday(); //Returns 1
moment.locale('en');
moment().startOf('week').isoWeekday(); //Returns 7
但我认为这有点难看......
有什么好主意吗? THX!
答案 0 :(得分:16)
这个问题在momentjs的当前API中有一个正确的答案:
moment.localeData('en-us').firstDayOfWeek();
正如OP所要求的那样 - 不需要片刻()的实例,也不需要去"开始"只是简单地使用他们的localeData。
请注意,可能需要下载时刻+语言环境文件,该文件明显大于(仅限于12kb)时刻(44kb)。
2.2.0版似乎是这种情况,可以在他们的文档中找到更多信息: http://momentjs.com/docs/#/i18n/locale-data/
答案 1 :(得分:4)
在我看来,您希望获得区域设置感知周开始(startOf('week')
)并将其值返回为isoWeekday
,而不是日期或其他内容?在这种情况下,你的问题就是答案。
moment().startOf('week').isoWeekday();
答案 2 :(得分:0)
看起来你可以做一下()。locale('us')。工作日(0)从版本2.1.0开始 http://momentjs.com/docs/#/get-set/weekday/