我有一个用例,其中我使用来自用户的输入,格式为YYYY-MM-DD'T'TT:mm
,以用Javascript创建Date
对象。问题在于Firefox和Chrome将输入解释为本地时间(这是我想要的),而Safari将输入解释为UTC时间并将其转换为本地时间。如何强制Safari使用与其他两个输入相同的输入解释?
答案 0 :(得分:0)
最简单的方法是自己解析字符串(毕竟这很琐碎),并使用多参数的 Date
构造函数,该构造函数始终在本地时间工作。或使用诸如 Moment.js 之类的库来为您完成此操作。我很想建议在字符串中添加时区偏移量( +0400
等)(基于 Date
对象上的 getTimezoneOffset
),但是要确定正确的时区偏移量,您需要知道日期/时间(由于夏令时),因此...无论如何您都必须完成工作。