2011-11-16 11 views
1

JavaScriptはtoLocaleString,toLocaleTimeStringなどの素晴らしい機能を提供します。しかし、実際にユーザーのロケールが何であるか、または少なくとも現在のタイムゾーンを見つける正しい方法は何ですか?私が考えているJavascriptを使用してロケール/タイムゾーンを検出する

ユースケースは、私は入力日時にユーザーを求めている、と私はそれからDateオブジェクトを構築したいがありますので、私は、使用するどのような時間帯を知る必要がありありそのための標準機能はありません。

答えて

1

私が覚えている限り、JavaScriptにはタイムゾーン情報はありません。現在のタイムゾーンオフセット(DST中に変更されています)だけがあります。

したがって、new Date(2011, 10, 16, 15, 2, 0, 0).getTime()を使用すると、現在のUNIXのミリ秒を使用して、ユーザーの現在のタイムゾーンを使用して正確な瞬間を判断できます。ただし、異なるタイムゾーン間で変換する必要がある場合は、ユーザーのタイムゾーンを明示的に要求し、サーバー側で変換を実行する必要があります。タイムゾーンを取得する

+0

まあ上のハングアップ - 'Date'コンストラクタの7引数形式は、ユーザーのタイムゾーン設定を尊重するということでしょうか?もしそうなら、それはおそらく私のために十分です。 – Dan

+0

はい、それは私が見る通りです。しかし、もちろん自分でやってください。 ;) – kan

+0

要するに、JSでは、ユーザーのタイムゾーンでのみ日付を操作し、インスタントをUNIXミルに変換することができます。サーバー側で行うべきことは他にもあります。 – kan

関連する問題