0

毎日午前 1 時 (PST) に実行されるシステム スクリプトがあります。世界中にユーザーがいます。JavaScript を使用して、ユーザーのローカル タイムゾーンで午前 1 時 PST を表示する単純な Web ページを提供したいと考えています。たとえば、ニューヨーク市のユーザーには、システム スクリプトが実行される時刻として 4 AM PST が表示されます。

PST 時間形式は HH:MM DD.YYYY です。

これは、モバイル Safari でのみ機能する必要があります。

これを行う最善の方法は何ですか?

4

3 に答える 3

0

コードは次のようになります。

alert(new Date(your_pst_server_time).toLocaleString());
于 2013-02-24T11:10:10.563 に答える
0

.getUTCHours()オブジェクトのおよび.getTimezoneOffset()メソッドを使用できnew Date()ます。使いやすくするために、この新しい関数をそのオブジェクトに追加しました。返される時刻形式を指定するパラメーターを受け入れます。

Date.prototype.getLocalTime = function (format){
    var date = new Date();
        var finalTime = ((date.getUTCHours()-2))-(((date.getTimezoneOffset())/60));
    if (format+'' != '24'){
        if (finalTime < 0){ finalTime = finalTime + 24 }
    }
    else {
        if (finalTime > 12){ finalTime = (finalTime - 12)+" PM" }
        else { finalTime += " AM" }
    }
    return finalTime.toString();
}

私の CET タイムゾーンでは、呼び出しnew Date().getLocalTime('24')は戻り"10"、呼び出しnew Date().getLocalTime() (パラメーターなしまたはパラメーターではない"24")は を返し"10 AM"ます。

タイムゾーンを確認するための時間変換サイト

于 2013-02-24T11:42:15.223 に答える
0

この関数は妥当な最初の開始点ですが、x.5 時間 (x 時間 + 30 分) のタイム オフセットがあるインドのような国には対応できません。残念ながら、そのように 60 で割ることはできません。

于 2013-09-06T07:51:24.823 に答える