我有一个服务器时间(美国东部成本),我想将其转换为用户的本地时间,而不管他的位置。我不知道用户的时区。
这是存储在 MongoDB 中的示例日期(UTC 时间):
ISODate("2012-05-03T09:40:34.764Z") which becomes 5/3/2012 5:40:34 AM
我想将其转换为用户的本地时间。
有没有我可以看的插件,或者有人没有插件就完成了?
我的代码不起作用:
var svrDate = new Date('5/3/2012 5:40:34 AM');
var tzo = ((new Date()).getTimezoneOffset() / 60) * (-1);
var userTime = new Date(svrDate.setHours(svrDate.getHours() + tzo)).toLocaleString());
最佳答案
简单:
var d = new Date("2012-05-03T09:40:34.764Z");
alert(d);
在我的例子中,这会打印:
Thu May 03 2012 02:40:34 GMT-0700 (PDT)
因为我在加利福尼亚。
字符串末尾的 Z 表示日期字符串为 UTC。 JavaScript 已经知道如何处理它。如果您想要本地时间,只需调用通常的 getTime()、getMonth()、getDay() 方法即可。如果您想要 UTC 时间,请调用它们的 UTC 变体:getUTCTime()、getUTCMonth()、getUTCDay() 等。
关于javascript - jQuery:如何将 UTC 中的服务器时间转换为 Web 浏览器的本地时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10574132/