使用Javascript仅将本地TimeZone更改为默认UTC

时间:2017-07-07 11:46:40

标签: javascript datetime timezone timezone-offset

我需要将本地或当前的TimeZone更改为默认UTC( GMT+0000 )时区。

我使用了预定义的javascript函数toLocaleString,但有些计算机有自己的日期时间格式,因此服务请求不匹配。

我的要求只是更改TimeZone而不更改当前值(无转换

let dtime = new Date();
console.log(dtime);

输出:Fri Jul 07 2017 17:07:32 GMT+0530 (India Standard Time)

必填格式为Fri Jul 07 2017 17:07:32 GMT+0000 (???)

场景:我在 DatePicker Angular Material)中选择了DOB,它返回 {{1} } 值。如果我将这些值从客户端传递到服务器,它会自动将其转换为本地为UTC默认值。

例如:我在datetime offset中选择DOB为 1990-01-01 ,它返回值 {{1 }} 但在HTTP调用中它会变为 datepicker 。因为我在 INDIA(1990-01-01 00:00:00,所以它减去05小时和30分钟。这是我面临的问题。

请帮助我。

1 个答案:

答案 0 :(得分:-1)

您可以尝试以下代码

date.setMinutes((date.getTimezoneOffset() * -1));

无需本地化,在执行任何服务调用之前使用此代码。它将通过您在datepicker中选择的确切日期。

它适用于所有时区(+)和( - ),

示例:1990-01-01 00:00:00 GMT+0530 (India Standard Time),上述代码将其转换为1990-01-01 05:30:00 GMT+0530 (India Standard Time)。在服务时,它将其转换为1990-01-01 00:00:00

我认为它会解决你的问题。