1、代码

function getTimeByTimeZone(timeZone){ var d=new Date(); localTime = d.getTime(), localOffset=d.getTimezoneOffset()*60000, //获得当地时间偏移的毫秒数,这里可能是负数 utc = localTime + localOffset, //utc即GMT时间 offset = timeZone, //时区,北京市+8 美国华盛顿为 -5 localSecondTime = utc + (3600000*offset); //本地对应的毫秒数 var date = new Date(localSecondTime); console.log("根据本地时间得知"+timeZone+"时区的时间是 " + date.toLocaleString()); console.log("系统默认展示时间方式是:"+ date) } getTimeByTimeZone(8)

2、测试

2-1、系统改成美国时间

根据本地/服务器时间获取指定时区时间 new Date指定时区时间 随笔 第1张 getTimeByTimeZone(-5) 测试结果如下
    根据本地时间得知-5时区的时间是 2016/12/8 下午10:00:00
    系统默认展示时间方式是:Thu Dec 08 2016 22:00:00 GMT-0500 (Eastern Standard Time)
    
    getTimeByTimeZone(8) 测试结果如下
    根据本地时间得知8时区的时间是 2016/12/9 上午11:00:00
    系统默认展示时间方式是:Fri Dec 09 2016 11:00:00 GMT-0500 (Eastern Standard Time)  

2-2、系统改成北京时间

根据本地/服务器时间获取指定时区时间 new Date指定时区时间 随笔 第2张

getTimeByTimeZone(-5) 测试结果如下
    根据本地时间得知-5时区的时间是 2016/12/8 下午10:00:00
    系统默认展示时间方式是:Thu Dec 08 2016 22:00:00 GMT+0800 (China Standard Time)


    getTimeByTimeZone(8) 测试结果如下
    根据本地时间得知8时区的时间是 2016/12/9 上午11:00:00
    系统默认展示时间方式是:Fri Dec 09 2016 11:00:00 GMT+0800 (China Standard Time)

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

 

查看时间世界:

http://www.timedate.cn/time/timezone.htm

http://tool.ckd.cc/worldclock.php

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄