- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在使用以下代码以正确的格式获取当前的 UTC 时间,但客户返回并要求时间戳现在使用 EST 而不是 UTC。我搜索了 Google 和 stackoverflow,但找不到适用于我现有代码的答案。
var currentdate = new Date();
var datetime = currentdate.getFullYear() + ":"
+ ("0" + (currentdate.getUTCMonth()+1)).slice(-2) + ":"
+ ("0" + currentdate.getUTCDate()).slice(-2) + ":"
+ ("0" + currentdate.getUTCHours()).slice(-2) + ":"
+ ("0" + currentdate.getUTCMinutes()).slice(-2) + ":"
+ ("0" + currentdate.getUTCSeconds()).slice(-2);
我们正在尝试做的是将一致的时间戳设置为 EST,而不管浏览器位于世界的哪个位置,因此最初使用的是 UTC 时间。
谢谢!
最佳答案
一些事情...
术语“EST”可用于北美东部标准时间或澳大利亚东部标准时间。大多数时区缩写不是唯一的,因此您应该更加具体。
EST 也不完全定义时区。它只定义了冬季月份使用的部分时区。另一半称为东部夏令时,缩写为 EDT。您的客户可能指的是“东部时间”,这需要将两者都考虑在内。
定义时区的典型方法是作为来自 the IANA time zone database 的标识符.您可以在 the timezone tag wiki 中阅读更多相关信息.例如,如果您的客户指的是美国东部时间,那么您的时区就是“美国/纽约”。
JavaScript 本身对时区一无所知,除了它自己的时区和 UTC。 (bjb568 提供的链接没有正确处理夏令时。)为了在客户端使用它们,您需要使用 one of the libraries I list here。 .
您当前的代码在输出方面有点奇怪。通常冒号仅用于分隔时间,而您将它们用于所有部分。无论如何,它没有转换任何东西,它只是输出 UTC。
您可能会使用像 moment.js 这样的库它是 moment-timezone添加在。例如:
moment().tz("America/New_York").format("YYYY-MM-DD HH:mm:ss")
关于javascript - 如何将 UTC 日期/时间转换为 EST 日期/时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20966042/
我是一名优秀的程序员,十分优秀!