SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【JavaScript】ある月の日数を計算する

問題

JavaScriptで、ある月が何日あるか、日数を計算するには?

calendar

答え

ある月の日数を知りたかったら、翌月の0日(=当月末日)が何日になるかを見るとよい。

function days(year, month) {
	return new Date(parseInt(year, 10), parseInt(month, 10), 0).getDate();
}

2014年11月は何日あるかというと

new Date(parseInt(2014, 10), parseInt(11, 10), 0).getDate(); // → 30

2014年12月は何日あるかというと

new Date(parseInt(2014, 10), parseInt(12, 10), 0).getDate(); // → 31

2014年2月は何日あるかというと

new Date(parseInt(2014, 10), parseInt(2, 10), 0).getDate(); // → 28

2016年2月は何日あるかというと

new Date(parseInt(2016, 10), parseInt(2, 10), 0).getDate(); // → 29

1900年2月は何日あるかというと

new Date(parseInt(1900, 10), parseInt(2, 10), 0).getDate(); // → 28

関連するメモ

コメント