js将其他时区转化为GMT+8时区时间

//getTimezoneOffset() 方法可返回格林威治时间和本地时间之间的时差,以分钟为单位
var d = new Date()
document.write(d.getTimezoneOffset()); //-480(北京时间)


//获取本地时区,GMT+8指的是东八区,比格林威治时间快8个小时
new Date().getTimezoneOffset()/60; //-8  (北京时间)

//将不同时区的时间转化为北京时间的时间戳哦
getNowSeconds(){
       //本地时间 + 本地时间与格林威治时间的时间差 + GMT+8与格林威治的时间差  
	return  new Date(new Date().getTime() + new Date().getTimezoneOffset()*60*1000 + 8*60*60*1000
}

  

//将时间字符串转化为时间戳,如:'2020-09-06 00:00:00'
function fromStrToStamp(str){ 
		let date = str.substring(0,19);
		date = date.replace(/-/g,'/'); //将'-'转化为'/'是因为有的手机上new Date('2020-09-06 00:00:00')会报错,所以统一转化为'2020/09/06 00:00:00'格式
		let time = new Date(date).getTime() - new Date().getTimezoneOffset() * 60 * 1000 - 8 * 60 * 60 * 1000; //考虑时区的差异,统一转化为东八区时间
		return time;
	}

  

posted @ 2020-09-06 00:17  shuangcherry  阅读(3900)  评论(0编辑  收藏  举报