JavaScript の getMonth() が前月を返すのはなぜですか?
「Sun Jul 7」という形式で日付を提供する日付ピッカーを使用する場合00:00:00 EDT 2013」と表示すると、 getMonth() メソッドが前月を返すことに気づくかもしれません。たとえば、以下のコード スニペット:
var d1 = new Date("Sun Jul 7 00:00:00 EDT 2013"); d1.getMonth(); //gives 6 instead of 7
理由:
この不一致の理由は、JavaScript の getMonth() メソッドが月を割り当てるという事実にあります。ゼロベースのインデックス。したがって、1 月には 0 の値が割り当てられ、2 月には 1 が割り当てられます。 7 月を表す日付で getMonth() を呼び出すと、実際には 6 月の値 (6) が返されます。
解決策:
正しい月を取得するには、次のようにします。次の調整されたコードを使用します:
d1.getMonth() + 1; //returns the correct month, which is 7 for July
getMonth() の結果に 1 を加算することで、ゼロから始まるインデックスをオフセットし、カレンダーの規則に従って月を取得します。
以上がJavaScript の getMonth() が前月の値を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。