根据本地/服务器时间获取指定时区时间 new Date指定时区时间

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)


查看时间世界:

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

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

你可能感兴趣的:(javascript)