Ale*_*lex 3 javascript timezone date
我正在开发一个涉及Javascript的个人项目,作为该项目的一部分,我想获取当前日期(包括时间)并相应地显示它.没什么大不了的?好吧,这笔交易是我希望在东部日光时间返回时间和日期,无论IP在哪里.
如果无法做到这一点,您建议采用哪种替代方法?php有这个功能吗?我可以写一个简单的PHP脚本,它需要一个日期并转换它,但我想尽可能保留在JS中.
我正在考虑通过最佳方式来做到这一点,但我很感激您提供的任何帮助.
谢谢!
我在互联网上找到了这个,并且还有更多这些脚本:
function calcTime(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);
return new Date(utc + (3600000*offset));
}
Run Code Online (Sandbox Code Playgroud)
因此,您获得当前时间,添加当前位置的偏移量以获得UTC时间,然后返回一个新日期,您可以再次添加某个时区的偏移量.
JavaScript 本机Date对象只知道两个时区,UTC 和用户的区域设置时区(即使如此,您可以提取的有关区域设置时区的信息量也是有限的)。您可以使用 UTC 工作,减去 4 小时即可得到 EDT,但您真的总是想要 EDT 而不是 EST 吗?
如果您想在 PHP 中的任意区域之间进行时区转换,您需要拖入一个具有自己的时区信息的大型库,例如TimezoneJS。
最好将 JavaScript 内容全部保留在 UTC 中,并让 PHP 端担心将其格式化为特定的语言环境/时区,例如使用Date/Time中的时区内容。