Javascript日期 - 删除时区信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript日期 - 删除时区信息相关的知识,希望对你有一定的参考价值。
我有一个Web应用程序,我的用户在纽约,但管理员遍布全球。用例很简单。管理员单击日期并添加一些注释。用户登录应用程序时,单击相同日期并查看备注
问题是时区。当印度管理员在2019年1月1日添加数据时,他的数据将被添加到2018年12月31日,因为服务器正在将传入的IST转换为EST。这打破了应用程序。
我无法处理个别时区。所以我想确保前端总是在EST中通过日期而不管当地时区
private normalizeDate(d)
{
let noTime = moment(d).format("L");
let m = moment(noTime).tz("America/New_York");
alert("no time :"+noTime);
alert("normalized :"+m.format("L"));
}
我尝试了这个功能,我在当地时区(d)获取日期并删除所有信息。转换为字符串,然后将其解析回我的EST时区。
很明显每当我打电话。 moment()。tz()它再次转换时区。
不知道什么是最好的解决方案?
答案
最终我用它来解决问题
public static NormalizeDate(d, timezone = "America/New_York")
{
var a = moment(d);
var b = a.clone();
return b.tz(timezone, true).startOf("day");
}
以上是关于Javascript日期 - 删除时区信息的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript:将 UTC 日期时间转换为传递时区的日期时间