我需要将本地或当前的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分钟。这是我面临的问题。
请帮助我。
答案 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
。
我认为它会解决你的问题。