ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript の getMonth() が一部の月の日付の前月を返すのはなぜですか?

JavaScript の getMonth() が一部の月の日付の前月を返すのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-19 13:18:29118ブラウズ

Why Does JavaScript's getMonth() Return the Previous Month for Dates in Some Months?

JavaScript の getMonth() は前月を返します: 日付ピッカーの異常

日付ピッカーからの日付抽出で矛盾が発生すると、困惑することがあります。特に、getMonth() メソッドでは、予想される月ではなく、前月が返される場合があります。この問題を説明すると、

<code class="javascript">var d1 = new Date("Sun Jul 7 00:00:00 EDT 2013");
console.log(d1.getMonth()); // Output: 6 (June)</code>

理由の解明

根本原因は、1 月を 0 月、12 月を月とみなす JavaScript の getMonth() メソッドにあります。 11. その結果、7 月の日付の Date オブジェクトを取得すると、getMonth() メソッドは 6 月を示す 6 を返します。

異常の修正

この問題を解決して、指定された日付に対応する実際の月番号を取得するには、getMonth() の結果を 1 ずつ増分します。

<code class="javascript">console.log(d1.getMonth() + 1); // Output: 7 (July)</code>

getMonth() から取得した月番号に 1 を加算することで、意図した月を正確に捉えることができます。

以上がJavaScript の getMonth() が一部の月の日付の前月を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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