我正在研究一个涉及Javascript的个人项目,并且作为该项目的一部分,我想抓取当前日期(包括时间)并相应地显示它。没什么大不了的?那么,成交是,我想返回的时间&日期在东部日光时间,无论在世界上的IP是。如何使用Javascript日期对象计算东部时间?
如果这是不可能的,您建议采用哪些替代方法? PHP有这个功能吗?我可以编写一个简单的PHP脚本来获取日期并将其转换,但如果可能的话,我想保留在JS中。
我想通过最好的方式来做到这一点,但我会很感激您可以提供的任何帮助。
谢谢!
我正在研究一个涉及Javascript的个人项目,并且作为该项目的一部分,我想抓取当前日期(包括时间)并相应地显示它。没什么大不了的?那么,成交是,我想返回的时间&日期在东部日光时间,无论在世界上的IP是。如何使用Javascript日期对象计算东部时间?
如果这是不可能的,您建议采用哪些替代方法? PHP有这个功能吗?我可以编写一个简单的PHP脚本来获取日期并将其转换,但如果可能的话,我想保留在JS中。
我想通过最好的方式来做到这一点,但我会很感激您可以提供的任何帮助。
谢谢!
JavaScript原生Date
对象只知道两个时区,即UTC和用户的区域设置时区(即使这样,您可以提取有关区域设置时区的信息量也是有限的)。你可以在UTC工作,减去4小时获得美国东部时间,但你真的总是想要美国东部时间,而不是东部时区?
如果您想在PHP中的任意区域之间执行时区转换,您需要拖动一个带有自己的时区信息的大型库,例如TimezoneJS。
将JavaScript的所有内容全部保存为UTC可能会更好,并让PHP方面担心它会针对特定区域/时区格式化,例如使用来自Date/Time的时区内容。
我发现这个on the internet,而且有很多这些脚本:
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));
}
所以,你得到的当前时间,加上当前位置的偏移量来获得UTC时间,然后返回一个再次添加特定时区的偏移量的新日期。
感谢您的信息和建议。 – Alex 2010-11-04 18:05:24