ホームページ ウェブフロントエンド jsチュートリアル jsで現在のタイムゾーンにおける夏時間の発生と終了のタイムコードを取得_javascriptスキル

jsで現在のタイムゾーンにおける夏時間の発生と終了のタイムコードを取得_javascriptスキル

May 16, 2016 pm 04:58 PM

复制代码代码如下:

<!DOCTYPE html>


<title>DST 計算ツール</title>
<script type="text/javascript">

function DisplayDstSwitchDates()
{
var year = new Date().getyear();
if (年 年 = 1900;

var firstSwitch = 0;
var SecondSwitch = 0;
var lastOffset = 99;

// 現在の年の各月をループします
for (i = 0; i {
// 月のタイムゾーン値を取得します
var newDate = new Date(Date.UTC(年, i, 0, 0, 0, 0, 0));
var tz = -1 * newDate.getTimezoneOffset() / 60;

// timzezone の変更が発生したときにキャプチャします
if (tz > lastOffset)
firstSwitch = i-1;
else if (tz secondSwitch = i-1;

lastOffset = tz;
}

// 1 分前に発生した日付/時刻を調べます
// DST 調整が発生する
var SecondDstDate = FindDstSwitchDate(year, SecondSwitch);
var firstDstDate = FindDstSwitchDate(年, firstSwitch);

if (firstDstDate == null && SecondDstDate == null)
return 'あなたのタイムゾーンでは夏時間は実施されていません。';
else
return ''
年 ' に DST 変更が発生する直前の時刻: ' firstDstDate ' および ' SecondDstDate;
}

function FindDstSwitchDate(年, 月)
{
// 開始日を設定します
varbaseDate = new Date(Date.UTC(年, 月, 0, 0 、0、0、0));
varchangeDay = 0;
varchangeMinute = -1;
varbaseOffset = -1 *baseDate.getTimezoneOffset() / 60;
var dstDate;

// タイムゾーンの調整が行われる正確な日を見つけるループ
for (day = 0; day < 50; day )
{
var tmpDate = new Date(Date.UTC) (年、月、日、0、0、0、0));
var tmpOffset = -1 * tmpDate.getTimezoneOffset() / 60;

// タイムゾーンがある日から次の日に変更されたかどうかを確認します。
if (tmpOffset !=baseOffset)
{
var minutes = 0;
changeDay = 日;

// 1 日分をバックアップし、オフセットを把握します
tmpDate = new Date(Date.UTC(year, month, day-1, 0, 0, 0, 0));
tmpOffset = -1 * tmpDate.getTimezoneOffset() / 60;

// タイムゾーンの変更が発生するまでの分をカウントします
while (changeMinute == -1)
{
tmpDate = new Date(Date.UTC(year, month, day-1) 、0、分、0、0));
tmpOffset = -1 * tmpDate.getTimezoneOffset() / 60;

// タイムゾーンの変更が発生する正確な分を決定します
//
if (tmpOffset !=baseOffset)
{
// 日付を取得するために 1 分バックアップします/
// タイムゾーンの変更が発生する直前の時間
tmpOffset = new Date(Date.UTC(year, month,
day-1, 0, minutes-1, 0, 0));
changeMinute = 分;
休憩;
}
else
分 ;
}

// JavaScript は月をカウントするため (表示用) を追加します。
// 月は 0 から 11 まで
dstDate = tmpOffset.getMonth() 1;

// 必要に応じて月をパディングします
if (dstDate <10) dstDate = "0" dstDate;

// 日と年を追加します
dstDate = '/' tmpOffset.getDate() '/' year ' ';

// タイムスタンプを取得します
tmpDate = new Date(Date.UTC(year, month,
day-1, 0, minutes-1, 0, 0));
dstDate = tmpDate.toTimeString().split(' ')[0];
dstDate を返します。
}
}
}

</script>
</head>

<script type="text/javascript">
document.write("現在の日付/時刻: " new Date() "<br />");
document.write(DisplayDstSwitchDates());
</script>
</body>
</html>
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JavaScriptの文字列文字を交換します JavaScriptの文字列文字を交換します Mar 11, 2025 am 12:07 AM

JavaScriptの文字列文字を交換します

カスタムGoogle検索APIセットアップチュートリアル カスタムGoogle検索APIセットアップチュートリアル Mar 04, 2025 am 01:06 AM

カスタムGoogle検索APIセットアップチュートリアル

例JSONファイルの例 例JSONファイルの例 Mar 03, 2025 am 12:35 AM

例JSONファイルの例

8見事なjQueryページレイアウトプラグイン 8見事なjQueryページレイアウトプラグイン Mar 06, 2025 am 12:48 AM

8見事なjQueryページレイアウトプラグイン

10 jQuery構文蛍光物 10 jQuery構文蛍光物 Mar 02, 2025 am 12:32 AM

10 jQuery構文蛍光物

独自のAjax Webアプリケーションを構築します 独自のAjax Webアプリケーションを構築します Mar 09, 2025 am 12:11 AM

独自のAjax Webアプリケーションを構築します

&#x27; this&#x27; JavaScriptで? &#x27; this&#x27; JavaScriptで? Mar 04, 2025 am 01:15 AM

&#x27; this&#x27; JavaScriptで?

10 JavaScript&JQuery MVCチュートリアル 10 JavaScript&JQuery MVCチュートリアル Mar 02, 2025 am 01:16 AM

10 JavaScript&JQuery MVCチュートリアル

See all articles