Flash AS3 在另一个时区获取时间

Flash AS3 get time in another timezone

我需要在 Flash AS3 中为纽约的某个时间制作一个倒计时时钟,而不考虑用户的本地机器时间。一旦 Date 对象正确,我就可以自己做时钟,但我似乎无法弄清楚如何使用纽约时间创建 Date 对象。我也必须记住夏令时。

感谢任何帮助。谢谢。

经过又一次 google 搜索,我终于找到了解决方案 here

var now:Date = new Date();
trace("now local time: " + now);

var newYorkOffset:int = 1000 * 60 * 60 * 5; // 5 hours offset for NYC 
var localTimezoneOffset:Number = now.getTimezoneOffset() * 60 * 1000;

// add now + localTimeZoneOffset to get UTC, then subtract NY offset to get NY time      
now.setTime(now.getTime() + localTimezoneOffset - newYorkOffset);           
trace("now in New York: " + now);

而且我很确定这会考虑夏令时,因为 getTimezoneOffset() 会根据日期自动包含夏令时。

要进行测试,请暂时将您机器的时区更改为纽约以外的时区。 “现在在纽约:”时间不会改变。