3

Javascriptでは、次のように処理しているタイムスタンプがあります:

var origUnixTimestamp = (date * 1000);

このタイムスタンプに加えて、UTC オフセット (-5、これは可変ですが) があります。Date の getTimezoneOffset() メソッドを使用して、origUnixTimestamp をユーザーの UTC オフセットに変換しようとしています。

元のタイムスタンプの UTC オフセット (-5 など) をどのように考慮して、それをユーザーの現在の UTC オフセットに変換するのか疑問に思っています。これはかなり単純なことだと思いますが、現時点では私の脳が歪んでいます.

4

3 に答える 3

3

あなたのためにそれを行うJavascript。Date オブジェクトに格納されているすべての日付は、既に正しいタイムゾーンに変換されています (エポックをコンストラクターに渡すだけです)。同じ Date オブジェクトには、エポック日付と UTC を操作する機能があります。

var some_date = new Date(epoch);
var time = some_date.getDay(); // will be different in different zones
some_date.setDay(22); // to set day
var origUnixTimestamp = some_date.getTime(); //returns you epoch
于 2009-12-15T19:53:06.593 に答える
2

これはどうですか: http://github.com/mde/timezone-js

于 2011-05-20T02:59:33.373 に答える
0

このリンクには、現地時間からの変換手順が記載されています。

// create Date object for current location
d = new Date();

// convert to msec
// add local time zone offset
// get UTC time in msec
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
于 2009-12-15T19:50:00.293 に答える