ページのサーバー時間は東 8 区時間です。ページの JS 関数は、世界中の時間と互換性を持たせるために、サーバー時間とユーザーの現地時間を比較する必要があります。東第8地区の時間に。この記事では主に JS タイムゾーンの時刻変換について詳しく説明し、皆様のお役に立てれば幸いです。
グリニッジ子午線上の現地時間、またはゼロタイムゾーン(中央時間帯)のゾーンタイムをグリニッジ標準時といい、世界時とも呼ばれます。 (これ以上の詳細な概念については説明しません。ここでは必要ありません。) たとえば、私たちの中国は東 8 区で、北京時間は (GMT+08:00) です
現地との時差を取得しますおよびグリニッジ時間:new Date( ).getTimezoneOffset()、単位は分です。
現地時間 = グリニッジ時間 - 時差
グリニッジ時間 = 現地時間 + 時差
時間間隔の差は時間単位であるためです。したがって、0 タイム ゾーンの時間を計算した後、対応する時間を減算または加算するだけです (東 N ゾーンは +N 時間、西 N ゾーンは -N 時間です)。 計算の便宜上、東Nエリアは正の数、西Nエリアは負の数として記録されます。つまり、対象タイムゾーン時間 = 現地時間 + 時差 + タイムゾーン間隔
var timezone = 8; //目标时区时间,东八区var offset_GMT = new Date().getTimezoneOffset(); // 本地时间和格林威治的时间差,单位为分钟var nowDate = new Date().getTime(); // 本地时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数var targetDate = new Date(nowDate + offset_GMT * 60 * 1000 + timezone * 60 * 60 * 1000); console.log("东2区现在是:" + targetDate);
).getTimezoneOffset(); // 本地时间和格林威治的时间差,单位为分钟var nowDate = new Date().getTime(); // 本地时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数var targetDate = new Date(nowDate + offset_GMT * 60 * 1000 + timezone * 60 * 60 * 1000); console.log("东2区现在是:" + targetDate);
関連推奨事項:
[再投稿] PHPのタイムゾーンの時刻異常に関する問題について
JavaScriptのワールドタイムゾーンの時間表示code_timeとdate
PHPはGMTを変換しますデータベースの文字列をユーザーのローカルタイムゾーン時間に +8 します
以上がJSタイムゾーンの時刻変換について詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。