人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

JavaScript for文の日付表示について

JavaScriptでfor文で日付表示したい場合、月末の最終日を取得するだけでは月の切り替えができないのでしょうか?

今日から一週間後までを表示するアプリを作りたいのですが1/31を過ぎると2/1にならず1/32と表示されてしまいます。

何か間違っている所ありますでしょうか?

以下ソースコード

<script type="text/javascript"><!--
var now = new Date();
var y = now.getFullYear();
var m = now.getMonth() + 1;
var d = now.getDate();
console.log(now); // Thu Jan 30 2014 00:00:00 GMT+0900 (東京 (標準時))

console.log(new Date(now.getFullYear(), now.getMonth() + 1, 0)); // Fri Jan 31 2014 00:00:00 GMT+0900 (東京 (標準時))
for(i=0;i<100;i++){
document.write(y + "/" + m + "/" + (d + i).toString() + "<br>");
}
// --></script>
<body>
</body>

●質問者: SHIN11
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3
ベストアンサー

こんな感じ。

var now = new Date();
var y = now.getFullYear();
var m = now.getMonth() + 1;
var d = now.getDate();
console.log(now); // Thu Jan 30 2014 00:00:00 GMT+0900 (東京 (標準時))

console.log(new Date(now.getFullYear(), now.getMonth() + 1, 0)); // Fri Jan 31 2014 00:00:00 GMT+0900 (東京 (標準時))
for(i=0;i<100;i++){
 // ここから変更してます
 y = now.getFullYear();
 m = now.getMonth() + 1;
 d = now.getDate();
 document.write(y + "/" + m + "/" + d + "<br>");
 now.setTime(now.getTime() + 1000*60*60*24); // 1日後にする
}

参考。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ