//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; }