javascript时区函数介绍


Posted in Javascript onSeptember 14, 2012

js的时区函数:

设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时间

============================
其他
============================

getUTCDate() 函数 -- 返回date对象中用世界标准时间(UTC)表示的月份中的一天(1-31)
getUTCDay() 函数 -- 返回date对象中用世界标准时间(UTC)表示的周中的一天(0-6)
getUTCFullYear() 函数 -- 返回date对象中用世界标准时间(UTC)表示的四位年份
getUTCHours() 函数 -- 返回date对象中用世界标准时间(UTC)表示的小时数(0-23)
getUTCMilliseconds() 函数 -- 返回date对象中用世界标准时间(UTC)表示的毫秒数(0-999)
getUTCMinutes() 函数 -- 返回date对象中用世界标准时间(UTC)表示的分钟数(0-59)
getUTCMonth() 函数 -- 返回date对象中用世界标准时间(UTC)表示的月份数(0-11)
getUTCSeconds() 函数 -- 返回date对象中用世界标准时间(UTC)表示的秒数(0-59)

setUTCDate() 函数 -- 设置date对象中用世界标准时间(UTC)表示的月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)
setUTCFullYear() 函数 -- 设置date对象中用世界标准时间(UTC)表示的年份,月份和天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)
setUTCHours() 函数 --- 设置date对象中用世界标准时间(UTC)表示的小时,分钟,秒和毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)
setUTCMilliseconds() 函数 -- 设置date对象中用世界标准时间(UTC)表示的毫秒数,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)
setUTCMinutes() 函数 -- 设置date对象中用世界标准时间(UTC)表示的分钟,秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)
setUTCMonth() 函数 -- 设置date对象中用世界标准时间(UTC)表示的月份,天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)
setUTCSeconds() 函数 -- 设置date对象中用世界标准时间(UTC)表示的秒,毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳)

在js中的时区我们以般讲的是关于格林威治时间和本地时间之间的时差,以分钟为单位,这和php,asp没什么区别下面我们结合date()函数来介绍一下js时区的相关问题。

定义和用法

getTimezoneOffset() 方法可返回格林威治时间和本地时间之间的时差,以分钟为单位。
语法
dateObject.getTimezoneOffset()返回值
本地时间与 GMT 时间之间的时间差,以分钟为单位。
在下面的例子中,我们将取得 GMT 时间与本地时间以分钟计的时间差:

<script type="text/javascript"> 
var d = new Date() 
document.write(d.getTimezoneOffset()) 
</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这类才有时区的没想到都会有的,有需要的同学可以参考一下。
Javascript 相关文章推荐
浅谈JavaScript的Polymer框架中的behaviors对象
Jul 29 Javascript
JavaScript弹窗基础篇
Apr 27 Javascript
JavaScript代码实现图片循环滚动效果
Mar 19 Javascript
浅谈js中用$(#ID)来作为选择器的问题(id重复的时候)
Feb 14 Javascript
JavaScript模拟文件拖选框样式v1.0的实例
Aug 04 Javascript
微信小程序 获取javascript 里的数据
Aug 17 Javascript
如何从零开始利用js手写一个Promise库详解
Apr 19 Javascript
基于jQuery ztree实现表格风格的树状结构
Aug 31 jQuery
webpack4打包vue前端多页面项目
Sep 17 Javascript
javaScript实现游戏倒计时功能
Nov 17 Javascript
Vue 中文本内容超出规定行数后展开收起的处理的实现方法
Apr 28 Javascript
layui默认选中table的CheckBox复选框方法
Sep 19 Javascript
推荐40个简单的 jQuery 导航插件和教程(下篇)
Sep 14 #Javascript
推荐40款强大的 jQuery 导航插件和教程(上篇)
Sep 14 #Javascript
基于JQuery的一句话搞定手风琴菜单
Sep 14 #Javascript
JQuery select控件的相关操作实现代码
Sep 14 #Javascript
11个用于提高排版水平的基于jquery的文字效果插件
Sep 14 #Javascript
六款帮助你实现惊艳视差滚动效果的jQuery插件
Sep 14 #Javascript
推荐17个优美新鲜的jQuery的工具提示插件
Sep 14 #Javascript
You might like
PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发
2012/01/16 PHP
destoon整合UCenter图文教程
2014/06/21 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
php写入数据到CSV文件的方法
2015/03/14 PHP
php模拟post上传图片实现代码
2016/06/24 PHP
php实现的简单多进程服务器类完整示例
2020/02/01 PHP
js操作二级联动实现代码
2010/07/27 Javascript
javaScript复制功能调用实现方案
2012/12/13 Javascript
js获得地址栏?问号后参数的方法
2013/08/08 Javascript
Jquery插件easyUi表单验证提交(示例代码)
2013/12/30 Javascript
jQuery中选择器的基础使用教程
2016/05/23 Javascript
JS 组件系列之 bootstrap treegrid 组件封装过程
2017/04/28 Javascript
JS实现上传图片实时预览功能
2017/05/22 Javascript
基于vue.js路由参数的实例讲解——简单易懂
2017/09/07 Javascript
mint-ui 时间插件使用及获取选择值的方法
2018/02/09 Javascript
mongodb初始化并使用node.js实现mongodb操作封装方法
2019/04/02 Javascript
vue.js 解决v-model让select默认选中不生效的问题
2020/07/28 Javascript
[46:28]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
Python之eval()函数危险性浅析
2014/07/03 Python
Python使用QQ邮箱发送Email的方法实例
2017/02/09 Python
Python爬虫实现网页信息抓取功能示例【URL与正则模块】
2017/05/18 Python
Python实现字符串格式化输出的方法详解
2017/09/20 Python
python连接数据库的方法
2017/10/19 Python
Python中 map()函数的用法详解
2018/07/10 Python
python调用摄像头拍摄数据集
2019/06/01 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
2019/09/04 Python
Python使用qrcode二维码库生成二维码方法详解
2020/02/17 Python
Python开发企业微信机器人每天定时发消息实例
2020/03/17 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
家长评语大全
2014/01/22 职场文书
婚前财产协议书范本
2014/10/19 职场文书
任命书标准格式
2015/03/02 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书
MySQL数据库简介与基本操作
2022/05/30 MySQL
MySQL中JOIN连接的基本用法实例
2022/06/05 MySQL