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 までご連絡ください。

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック
Gmailメールのログイン入り口はどこですか?
7286
9


Java チュートリアル
1622
14


CakePHP チュートリアル
1342
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1206
29

