ホームページ >ウェブフロントエンド >jsチュートリアル >夏時間 (DST) が実施されているかどうかを確認するにはどうすればよいですか?

夏時間 (DST) が実施されているかどうかを確認するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-15 02:10:021098ブラウズ

How Can I Determine if Daylight Saving Time (DST) is in Effect?

DST とそのオフセットの決定

夏時間 (DST) が有効かどうかを確認するには、getTimezoneOffset プロパティを利用できます。 UTC との時差を分単位で返します。主な違いは規則にあります。

  • UTC より西のゾーン (通常は「後ろ」) には、正のオフセット値が表示されます。たとえば、ロサンゼルスでは、標準時では 480 分 (正の 8 時間)、DST では 420 分 (正の 7 時間) が表示されます。
  • UTC より東のゾーンは、負のオフセット値を表示します。

DST ステータスを確認するには、現在のオフセットと標準オフセットを比較します。

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();
};

呼び出しにより日付オブジェクトに対して isDstObserved() を実行すると、DST がアクティブかどうかを確認できます。

例:

var today = new Date();
if (today.isDstObserved()) {
    console.log("Daylight saving time is in effect!");
}

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

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