从docs for Moment.js开始,moment().startOf('isoWeek')
表示根据ISO 8601设置为一周的第一天。
来自wikipedia page for ISO 8601,它表示第一周是(以及其他等效定义):第一周,其中有大部分时间(四个或更多)在起始年份。
WEEK(date, 3)
表示201616
给出一周(1-53),周一为第一周的第一天,今年为4天或更多天。
据我所知,这些都是一周的等效定义,但它们没有网格化。
我的MySQL数据库(v5.6.17)为SELECT YEARWEEK('2016-4-20',3)
Mon Apr 11 2016
在浏览器中使用Moment.js(v2.10.3)为moment().year(2016).week(16).startOf("isoweek")
λ bower install
bower angular-sails#* not-cached https://github.com/kyjan/angular-sails.git#*
bower angular-sails#* resolve https://github.com/kyjan/angular-sails.git#*
bower angular-mocks#~1.5.0 not-cached https://github.com/angular/bower-angular-mocks.git#~1.5.0
bower angular-mocks#~1.5.0 resolve https://github.com/angular/bower-angular-mocks.git#~1.5.0
bower angular-scenario#~1.5.0 not-cached https://github.com/angular/bower-angular-scenario.git#~1.5.0
bower angular-scenario#~1.5.0 resolve https://github.com/angular/bower-angular-scenario.git#~1.5.0
bower angular-sails#* ECMDERR Failed to execute "git ls-remote --tags --heads https://github.com/kyjan/angular-sails.git", exit code of #128
这些不是同一周,我无法弄清楚原因。
答案 0 :(得分:3)
当您致电[0][0] = pei
[0][1] = 2
[1][0] = isaac
[1][1] = 4
[2][0] = luis
[2][1] = 2
[3][0] = isaac
[3][1] = 6
[4][0] = luis
[4][1] = 8
时,您正在设置“区域设置”周(我不知道moment.js是如何工作的),但可能第一天将是星期日。当您再调用.week()
时,您将获得该周的ISO开始,即上周一。
如果要使用ISO,则必须使用ISO方法,因此:
.startOf('isoweek')
为2016-04-18T00:00:00
创建一个时刻对象或使用字符串:
moment().year(2016).isoWeek(16).startOf('isoweek');
默认为ISO周编号和周开始。