定义和用法
getTimezoneOffset() 方法可返回格林威治时间和本地时间之间的时差,以分钟为单位。
语法
dateObject.getTimezoneOffset()返回值
本地时间与 GMT 时间之间的时间差,以分钟为单位。
在下面的例子中,我们将取得 GMT 时间与本地时间以分钟计的时间差:
代码如下 | 复制代码 |
<script type="text/javascript"> var d = new Date() </script>输出: -480 |
设datename为创建的一个Date对象
====================
datename.getTimezoneOffset()
--取得当地时间和GMT时间(格林威治时间)的差值,返回值以分钟为单位
====================
举例:根据本地时间获得GMT时间和任意时区的时间
代码如下 | 复制代码 |
d=new Date(); //创建一个Date对象 localTime = d.getTime(); localOffset=d.getTimezoneOffset()*60000; //获得当地时间偏移的毫秒数 utc = localTime + localOffset; //utc即GMT时间 offset =10; //以夏威夷时间为例,东10区 hawaii = utc + (3600000*offset); nd = new Date(hawaii); document.writeln("Hawaii time is " + nd.toLocaleString() + <br>"); Date.UTC(year, month, day, hours, minutes, seconds, ms) |
--以GMT时间构建Date对象,返回Date对象
==============================
直接创建Date对象则认为输入的是当地时间,而用Date.UTC创建对象则认为输入的是GMT时间
代码如下 | 复制代码 |
datename.toUTCString() datename.toGMTString() |
--输出GMT时间
============================
该俩函数相同。后者被认为是过时的。
相对于toLocaleString输出本地时间,该函数输出GMT时间
说明
getTimezoneOffset() 方法返回的是本地时间与 GMT 时间或 UTC 时间之间相差的分钟数。实际上,该函数告诉我们运行 JavaScript 代码的时区,以及指定的时间是否是夏令时。
返回之所以以分钟计,而不是以小时计,原因是某些国家所占有的时区甚至不到一个小时的间隔。
提示和注释:
注释:由于使用夏令时的惯例,该方法的返回值不是一个常量。
注释:该方法总是结合一个 Date 对象来使用。
var myDate=new Date()
Date 对象会自动把当前日期和时间保存为其初始值。
参数形式有以下5种:
代码如下 | 复制代码 |
new Date("month dd,yyyy hh:mm:ss"); new Date("month dd,yyyy"); new Date(yyyy,mth,dd,hh,mm,ss); new Date(yyyy,mth,dd); new Date(ms); |
注意最后一种形式,参数表示的是需要创建的时间和GMT时间1970年1月1日之间相差的毫秒数。各种函数的含义如下:
month:用英文表示月份名称,从January到December
mth:用整数表示月份,从(1月)到11(12月)
dd:表示一个月中的第几天,从1到31
yyyy:四位数表示的年份
hh:小时数,从0(午夜)到23(晚11点)
mm:分钟数,从0到59的整数
ss:秒数,从0到59的整数
ms:毫秒数,为大于等于0的整数
如:
代码如下 | 复制代码 |
new Date("January 12,2006 22:19:35"); new Date("January 12,2006"); new Date(2006,0,12,22,19,35); new Date(2006,0,12); new Date(1137075575000); |
以前不知道js也有时区这个总以为只是asp,php这类才有时区的没想到都会有的,有需要的同学可以参考一下。