9

クライアントのタイムゾーンを取得する関数を作成できる人、次のような戻り値:EDT EST ISTなど

4

6 に答える 6

11

toTimeString()タイムゾーン名で時間を与えるメソッドは、以下を試してください...

var d=new Date();
var n=d.toTimeString();     

ouput

03:41:07 GMT+0800 (PHT) or 09:43:01 EDT 

デモ

また

チェック: JavaScript を使用した自動タイムゾーン検出

jstz.min.js をダウンロードして、HTML ページに関数を追加します。

    <script language="javascript">
        function getTimezoneName() {
            timezone = jstz.determine_timezone()
            return timezone.name();
        }
    </script>
于 2012-04-24T13:29:12.847 に答える
2

タイム ゾーン値を使用する場合は、Date().getTimezoneOffset() 関数を使用し、この URLの timeanddateからハッシュ テーブルを作成して関連付けます。

于 2012-04-24T13:31:04.740 に答える
1

Date オブジェクトのメソッドを呼び出した結果を見ると、toString「Tue Apr 24 2012 23:30:54 GMT+1000 (AUS Eastern Standard Time)」のような値が得られます。これは、システム ロケールの設定によって異なります。

そこから、括弧内の各大文字を一致させることができます。

var paren = new Date().toString().match(/\(.+\)/);
return paren ? paren[0].match(/([A-Z])/g).join("") : "";

問題は、すべてのブラウザーに括弧で囲まれた値が含まれるわけではないということです。

既知の Java プラグインを使用して Firefox をターゲットにしている場合はjava、Javascript のオブジェクトを利用して、名前 (「America/Los_Angeles」など) に基づいて新しい TimeZone (java.util.TimeZone) オブジェクトを作成し、getDisplayName名前を付ける方法。

于 2012-04-24T13:36:10.547 に答える