将Unix时间戳转换为PST

时间:2013-07-04 06:59:16

标签: javascript jquery date time timezone

嗨,我有一个json,我正在获取一些数据。我得到的时间格式就像

1367023443000

我想将其转换为普通PST格式。我尝试过使用Javascript的Date方法。将Unix时间传递给Date方法,

var now = new Date(1367023443000); 

我只获得IST值,但不是PST。我该怎么做才能将Unix时间戳转换为PST?

1 个答案:

答案 0 :(得分:1)

如果您实际上并不在美国太平洋时区,那么在JavaScript中可靠地执行此操作的唯一方法是使用实​​现TZDB数据库的库。 I list several of them here

例如,使用walltime-js库,您可以执行以下操作:

var date = new Date(1367023443000);
var pacific = WallTime.UTCToWallTime(date, "America/Los_Angeles");
var s = pacific.toDateString() + ' ' + pacific.toFormattedTime();

// output:  "Fri Apr 26 2013 5:44 PM"

您不能只添加或减去固定数字,因为目标时区可能会使用不同的偏移量,具体取决于您所谈论的具体日期。这主要是由于夏令时,也是因为时区随着时间的推移而发生变化。