2012-01-13 66 views
0

如何查找一個月內有多少週數,即一個月有4周還是5周,以及如何從當前提供的日期計算。查找一個月中的週數iphone

感謝

+1

一個月永遠不會有整整5個星期。最大的月份(31天)是4周和3天。最小的月份(28天)恰好是4周。所以每個月至少有4周的時間,從來沒有5周的時間。也許你的問題需要更多關於你真正想要計算的細節......你的意思是計算一個月內「星期一」的數量嗎? – 2012-01-13 02:00:47

+0

我需要在圖表上顯示幾周,所以如果有更多的4周,即4周和3天,那麼也需要顯示爲圖表上的第5周。我從http://stackoverflow.com/questions/1805687/number-of-weeks-in-month獲得瞭解決方案,在那裏我可以傳遞第一個日期和最後一個月的日期,並且日期組件將提供我個月的週數 – 2012-01-13 02:04:10

回答

0

對於iPhone參見:Number of weeks in month對於web/JavaScript的,請參閱:Get Weeks In Month Through Javascript。算法簡單(從上面的頁面):

function weekCount(year, month_number) { 

    // month_number is in the range 1..12 

    var firstOfMonth = new Date(year, month_number-1, 1); 
    var lastOfMonth = new Date(year, month_number, 0); 

    var used = firstOfMonth.getDay() + lastOfMonth.getDate(); 

    return Math.ceil(used/7); 
} 
+0

CEIL (number_of_days/7)不會給出正確的結果。它不僅僅是將一個月中的天數除以7.請閱讀每月的每週部分:http://en.wikipedia.org/wiki/ISO_week_date – Art 2013-01-30 21:32:05