Javascript 将设置日期转换为用户';自动设置本地时间

Javascript 将设置日期转换为用户';自动设置本地时间,javascript,php,jquery,Javascript,Php,Jquery,我正在创建一个应用程序,其中有一组相当大的日期和时间,我需要在用户的本地时间和日期中显示它们。所有设定的日期和时间均为英国夏令时;例如,英国夏令时08-24-2014 16:00=08-24-2014美国东部时间11:00。现在,在来到这里之前,我花了3-4个小时寻找答案,但如果有什么问题的话,我会更加困惑是否有办法将一组BST日期和时间自动转换为用户的本地设置,而无需设置时区等? p、 我有两个想法,但我不知道它们是否有效,也不知道如何执行 1) 获取并更改BST日期和时间,并将其转换为测量单

我正在创建一个应用程序,其中有一组相当大的日期和时间,我需要在用户的本地时间和日期中显示它们。所有设定的日期和时间均为英国夏令时;例如,英国夏令时08-24-2014 16:00=08-24-2014美国东部时间11:00。现在,在来到这里之前,我花了3-4个小时寻找答案,但如果有什么问题的话,我会更加困惑是否有办法将一组BST日期和时间自动转换为用户的本地设置,而无需设置时区等?

p、 我有两个想法,但我不知道它们是否有效,也不知道如何执行

1) 获取并更改BST日期和时间,并将其转换为测量单位;获取并更改用户的本地日期和时间,并将其转换为上述相同的度量单位,计算新度量中的差异,然后将其转换为用户的本地时间


2) 使用地理位置查找用户的日期和时间/时区,以及;将BST转换为地理位置显示的任何内容。

您可以使用javascript获取用户的机器时区:

var currentDate = new Date();
var currentTimeZoneOffsetInHours = currentDate.getTimezoneOffset() / 60;
请参阅此处的文档:


有了偏移量,您可以将其添加到值中

有一个javascript库,允许您查询特定日期和时区的夏令时值

  • 因为你所有的约会都在英国的夏天。使用
    isdstshift()
    首次查询日期是否在英国冬季时间。和
    subtract()
    一小时

  • 将日期转换为其他时区


  • 我正在努力完全理解这个概念。我知道它返回用户的机器时间和UTC之间的分钟差,但是UTC到BST的时间呢?有这样的事吗?如果有,我假设我必须手动添加计算?谢谢你的指导:)你说的是“英国夏季”吗?冬天的日期和时间呢?英国夏季时间也代表了这些吗?这是否意味着要在英国当地时间获得这些数据,您必须从所有冬季日期中减去一小时?所有日期和时间始终在英国夏令时发布,无论是否为冬季。这意味着:如果用户在英国,则所有冬季日期都需要减去一小时。对于其他时区,冬季日期还必须添加UTC偏移和夏令时。对的