月の日数を調べるには?

[上に] [前に] [次に]
1999/07/23(金) 10:52:19
JavaScriptで、何年の何月かを指定すると、
その月の日数を返すような関数はありませんか?

1999/07/23(金) 12:03:08
[[解決]]
月の末日を知るために、日数が知りたかったのですが、
そのような関数なしで、末日が出せることがわかりました。
でも、知っていることがあったら、書いてください。

徳明 1999/07/23(金) 12:19:02
1月なら31日、3月なら31日、4月なら30日、5月なら31日・・・
2月だけは特別で、通常は28日。
ただし、年が4で割り切れる場合は29日。
ただし、年が100で割り切れる場合は28日。
ただし、年が400で割り切れる場合は29日。
だったと思います。

Tmb 1999/07/23(金) 13:34:17
組むならこんな感じですかね。

function getLastDate(Y,M){
d1=new Date(Y, M, 1);
t1=d1.getTime();
d1.setTime(t1-1000)
alert(d1.getDate());
}

その年月の1日の「1秒前」の日付を出させてるだけですが。
いや,別に1ミリ秒前でもいいんですけど,何となく(^^;

Tmb 1999/07/23(金) 13:56:31
改訂版。上のだと前月の末日を出すのと,引数として月は0-11の値を要求する(JavaScriptの
仕様がそもそもそうなんだけど)そこを変えてみましたが,やってることはほぼ同じです。

<SCRIPT language="javascript">
function getLastDate(Y,M){
d1=new Date(Y, M-1, 1);
d1.setTime(d1.getTime()+1000*60*60*24*32);
d2=new Date(d1.getYear(),d1.getMonth(),1);
d2.setTime(d2.getTime()-1000);
return d2;
}
</SCRIPT>
<FORM name="formname">
<input type=text name="year" value="1999">
<input type=text name="month" value="4">
<input type=button name="button1" onClick="alert(getLastDate(this.form.year.value,this.form.month.value).getDate());">
</FORM>

1999/07/26(月) 11:42:18
[[解決]]
そのものずばりの関数はないようですね。
でも、とてもお役立ちです。
どうもありがとう。

[上に] [前に] [次に]