ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript の getMonth() が前月の値を返すのはなぜですか?

JavaScript の getMonth() が前月の値を返すのはなぜですか?

DDD
DDDオリジナル
2024-10-19 13:17:011124ブラウズ

Why Does JavaScript's getMonth() Yield the Previous Month's Value?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。