我有一個從星期一開始的日曆。如何查找從星期一開始的日曆的月份周?
2011年5月
----------------------------
Mon Tue Wed Thu Fri Sat Sun
----------------------------
25 26 27 28 29 30 1 week 1
2 3 4 5 6 7 8 week 2
9 10 11 12 13 14 15 week 3
16 17 18 19 20 21 22 week 4
23 24 25 26 27 28 29 week 5
30 31 1 2 3 4 5 week 6
我想找月份的一週給予日期。
下面的工作很好,在星期日開始的日曆上。
function getWeekOfMonth(date) {
prefixes = ['1', '2', '3', '4', '5'];
return prefixes[0 | date.getDate()/7];
}
但在我的日曆(週一爲基礎)如果讓我選擇5月1日,返回值,如果「1」從而 給我"week2"
但它應該是"week1"
。
如果我選擇5月15日,給我「week4」而不是「week3」。
它適用於像5月12日這樣的事情。
我試圖改變這一天的差距(星期一和星期日),並修改了失敗的算法。
任何人都可以告訴我如何正確修復我的算法?
function getWeekOfMonth(date) {
prefixes = ['1', '2', '3', '4', '5'];
return prefixes[0 | date.getDate() - 1/7];
}
如果給你week1爲may1st又是什麼給你的5月2日? – 2011-05-12 07:42:01
5月2日給我week1。因爲如果是基於星期日的balendar,則第1到第7將是第1周。 – 2011-05-12 07:44:24
所以week0是第一個非滿周? – 2011-05-12 07:48:12