ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で夏時間が現在有効かどうかを確認するにはどうすればよいですか?

JavaScript で夏時間が現在有効かどうかを確認するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-19 15:28:03637ブラウズ

How to Determine if Daylight Saving Time Is Currently in Effect in JavaScript?

夏時間 (DST) ステータスの決定

JavaScript では、時差の正確な計算が DST の影響を受ける可能性があります。DST は現地時間を次のように調整します。 1時間。これに対処するには、DST が有効かどうかを確認することが重要です。

DST ステータスの確認

Date オブジェクトは、getTimezoneOffset を通じてソリューションを提供し、ローカル タイムゾーンとタイムゾーンの差を返します。時間と UTC を分単位で表示します。ただし、getTimezoneOffset は、UTC より西のタイム ゾーン (ロサンゼルスなど) には正の値を返し、UTC より東のタイム ゾーン (シドニーなど) には負の値を返すことに注意してください。

これを考慮して、次のコード スニペットを使用できます。

Date.prototype.stdTimezoneOffset = function() {
  var jan = new Date(this.getFullYear(), 0, 1);
  var jul = new Date(this.getFullYear(), 6, 1);
  return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());
};

Date.prototype.isDstObserved = function() {
  return this.getTimezoneOffset() < this.stdTimezoneOffset();
};

stdTimezoneOffset 関数は、1 月と 7 月の間のより大きいオフセット値を返し、標準時間オフセットを効果的に表します。次に、isDstObserved 関数は、現在のオフセットとこの標準オフセットを比較します。現在のオフセットが小さい場合は、DST が使用中であることを示します。

使用例

var today = new Date();
if (today.isDstObserved()) {
  alert("Daylight saving time!");
}

注: DST の開始日と終了日地域によって異なるため、正確な情報については、地元の情報源を参照することをお勧めします。

以上がJavaScript で夏時間が現在有効かどうかを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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