根据 javascript 中的时区更新时间

Update Time according to the timezone in javascript

我从数据库中以 2015-03-13 02:08:18 的形式返回了 time 它设置为 00:00 时区,但我需要将其转换为用户时间以显示 'how many hours/minutes/seconds' 之前的时间。是否有一个简单的功能可以完成这项工作? (我知道,这可能已经有人回答了,但到目前为止我找到的所有例子都在做相反的事情)

只需在末尾添加一个 Z 告诉 JavaScript 将其解析为 UTC,并将 space 替换为 T 以便它在 IE 中工作(谢谢 @Salman A):

var timestampFromDatabase = '2015-03-13 02:08:18';
var dateInUsersTimezone = new Date(timestampFromDatabase.replace(' ', 'T') + 'Z');

例如,在加利福尼亚州:

new Date('2015-03-13T02:08:18Z');
// Thu Mar 12 2015 19:08:18 GMT-0700 (PDT)

如果时区已知(例如+00:00),那么您需要做的就是:

var d1 = new Date("2015-03-13T02:08:18+00:00");
var d2 = new Date();
var diff = d2 - d1;
// diff contains the number of milliseconds between the two dates

差异与用户时区无关。