在獲取每月天數的時候,一般都是存儲到一個數組中進行獲取,但是如果是二月份的話就需要首先判斷是否閏年,再確定是28還是29了。
js可以通過Date對象很方便的獲取到每月的天數,在初始化Date對象時,我們可以通過這種方式
var d = new Date(2017,2,0); console.log(d.getDate());
以上代碼可以在控制台輸出2015年2月份的天數
Date對象月份從0開始,即0表示1月份,以此類推。
在上面的代碼中,我們初始化d為三月份的第0天,由於JavaScript中day的范圍為1~31中的值,所以當設為0時,會向前 一天,也即表示上個月的最后一天。
通過這種方式可以得到每個月份的天數,也不同區分閏年了,很方便~
可以寫個這樣的函數,如下:
function mGetDate(year, month){ var d = new Date(year, month, 0); return d.getDate(); }
在使用時傳入想要獲取的年份和月份即可,如下:
var totalDay = mGetDate(2004,2); //29
如果要獲取當前月份天數:
function mGetDate(){ var date = new Date(); var year = date.getFullYear(); var month = date.getMonth()+1; var d = new Date(year, month, 0); return d.getDate(); }