2016-01-24 60 views
0

我只是有四个不同的时区时刻得到的时间在不同的时区

<select class="pull-left marg-l-5px" id="hoursTimezone"> 
<option>-</option> 
<option>EST</option> 
<option>CST</option> 
<option>PDT</option> 
<option>MDT</option> 
</select> 

我添加数据到我的项目时刻timzone文件,文件名是

/moment-timezone-with-data-2010-2020.js 

I'M IN IST和打字以下命令

moment().tz('EST'); 

正在恢复时间在IST,如果我尝试同其他时区CST,PDT,MDT我越来越è rrors

Moment Timezone has no data for ---. 

检查下面的图片

enter image description here

这里有什么问题?

只有在这些时区才有时间获得时间吗?

或者有人请告诉我什么是EST和时刻数据串其他时区的字符串

还有,如果我在this文件进行搜索,比如

我想要的东西,如“查询这么多串'America/Los_Angeles',你会得到EST时间“。

在此先感谢

回答

1

你永远不应该依赖时区的缩写选择或输入。他们太模糊了。单单“CST”有五种不同的含义。见the list on Wikipedia

此外,缩写不一定代表整个时区。考虑到CST只适用于标准时间内的北美中部时区,而CDT则适用于白天时间。

还意识到即时时区中使用的时区必须在IANA时区数据库内有效。 You can find a list here

我相信你要找的是适用于美国的时区。假设你不关心历史日期,最小集合还需要包括亚利桑那州,夏威夷州和阿拉斯加州。名单将是:

<select class="pull-left marg-l-5px" id="hoursTimezone"> 
<option>-</option> 
<option value="America/New_York">Eastern</option> 
<option value="America/Chicago">Central</option> 
<option value="America/Denver">Mountain</option> 
<option value="America/Phoenix">Arizona</option> 
<option value="America/Los_Angeles">Pacific</option> 
<option value="America/Anchorage">Alaska</option> 
<option value="Pacific/Honolulu">Hawaii</option> 
</select> 
+0

非常感谢您的解释 – user555