<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>タイトルページ</title> <script language="javascript"> function getLastDay(year,month) { var new_year = year; // 現在の年を取得します var new_month = month++ // 簡単に計算できるように月の最初の日を取得します (最終日は固定されていません) if(month>12) // 現在の年が 12 月より大きい場合、その後、年は来年に変更されます { new_month -=12; //月を減らす new_year++; //年を増やす} var newnew_date = new Date(new_year,new_month,1) //現在の月の最初の日を取得します return (new Date(new_date.getTime() )-1000 *60*60*24)).getDate();//月の最終日を取得する} </script> <body> <input id="Button1" type="button" value="2007 年 5 月の最後の日を取り上げます" onClick="alert(getLastDay(2007,5))" /> </body> </html>jsは月の最大日数を取得します
JSのnew Date("xxxx/xx/xx")の日付構築方法には素晴らしいものがあります。
「xxxx/xx/0」(数値 0)を渡すと、取得される日付は「xx」月の前の月の末日になります(「xx」月の最大値は 69 です。話は逸れます)。
「xxxx/xx/1」(No.1)を渡すと取得される日付はxx月の翌月1日になります(自分で理解してください)
「1999/13/0」を渡すと「1998/12/31」が得られます。そして最大の利点は、「xxxx/3/0」を渡すと、xxxx 年の 2 月の最終日が取得されることです。現在の年が閏年であるかどうかが自動的に判断され、28 または 29 が返されます。自分で判断する必要はありません。
したがって、選択した年と月に何日あるかを取得したい場合、必要なのは次だけです。
var temp=new Date("年を選択/月を選択+1/0");
return temp.getDate()//最大日数
検証には、この方法も使用できます。
以下は、特定の年と月の日数を取得するために JS で記述された getDaysInMonth(year, month) メソッドです。
次のようにコードをコピーします。
function getDaysInMonth(年,月){
month = parseInt(month,10)+1;
var temp = new Date(年+"/"+月+"/0");
戻り値 temp.getDate();
}
JavaScriptを使用して特定の月の日数を取得する方法は次のとおりです。
目標: 2014/4 月の日数を取得する
//日付オブジェクトを構築します: var day = new Date(2014,4,0) //日数を取得します: var daycount = day.getDate();
説明: OK、ご希望の日数が解放されました。 getDate() は取得された最後の日であり、その月の日数です。 注: 日付オブジェクトを作成するとき、月は 0 から始まるため、実際に作成される月は 4 になります。 3番目の0日の日数は、最低条件が1日です。1日より小さい場合は、希望する3月末日となります。