钛-我怎么能总是得到一个特定的时区,而只得到时间



我试图始终获得特定时区的特定时间

例如:Sao Paulo(-3)

我已经尝试了这个代码,我发现在这里搜索stackoverflow:

// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {
    // 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);
// create new Date object for different city
// using supplied offset
nd = new Date(utc + (3600000*offset));
// return time as a string
return "The local time in " + city + " is " + nd.toLocaleString();
}
// get Sao Paulo time
Ti.API.info(calcTime('Sao Paulo', '-3'));

在我的Ti.API.info()上,我得到了以下响应:The local time in Sao Paulo is August 6, 2013, 3:31:52 PM GMT-03:00。。。有办法只得到3:31:52吗?此外正如这个函数所说。。。它总是显示当地时间,并显示该时区的时间。。。但有人知道,我怎么才能在不给local time的情况下一直得到圣保罗的时间?因此,如果用户在手机上更改时间,就不会更改圣保罗的时间。

感谢

使用momentjs特别是时刻时区

http://momentjs.com/timezone/docs/

如果您使用Alloy,默认情况下会包含momentjs,否则您需要下载库。

如果您只是在谈论JavaScript,那么请看到这个答案。然而,我的猜测是,Titanium有自己的方式将原生iOS或Android时区API映射到JavaScript中。如果没有,它应该。我对钛的了解还不够,无法进一步回答这一点。

请记住,时区不能仅用偏移量表示。请参阅时区标记wiki中的"时区!=偏移量"。

特别地,圣保罗由IANA时区数据库中的America/Sao_Paulo时区表示。该区域在-3和-2之间交替,如图所示。您不能简单地传入-3并期望它知道该做什么。

相关内容

  • 没有找到相关文章

最新更新