【前端】js时区时间转换

背景:
比赛倒计时
服务器是在印度,前端通过接口返回回来的Response Headers中的Date时间去获得服务器时间。
浏览器Date中的时间,会自动转成客户端当前的时区环境。

需求:
需要把浏览器获得的时区和时间,转成服务器相同的印度时区。

 

解决:
1、浏览器返回的时间
【前端】js时区时间转换_第1张图片

2、转换代码:
 

var timezone = 5.5; //目标时区时间,东5.5区
var offset_GMT = new Date("Thu, 05 Sep 2019 02:04:34 GMT").getTimezoneOffset(); // 浏览器Date中时间和格林威治的时间差,单位为分钟
var nowDate = new Date("Thu, 05 Sep 2019 02:04:34 GMT").getTime(); // 浏览器Date中时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数
var targetDate = new Date(nowDate + offset_GMT * 60 * 1000 + timezone * 60 * 60 * 1000);
console.log("东5.5区现在是:" + targetDate);

印度是东5.5区,中国是东8区

你可能感兴趣的:(前端)