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功能的正确方法(译文)
Apr 12 Javascript
javascript实现可全选、反选及删除表格的方法
May 15 Javascript
在JavaScript中用getMinutes()方法返回指定的分时刻
Jun 10 Javascript
使用AngularJS和PHP的Laravel实现单页评论的方法
Jun 19 Javascript
jQuery调用WebMethod(PageMethod) NET2.0的方法
Apr 15 Javascript
在localStorage中存储对象数组并读取的方法
Sep 24 Javascript
jQuery模拟完美实现经典FLASH导航动画效果【附demo源码下载】
Nov 09 Javascript
深入理解Node中的buffer模块
Jun 03 Javascript
vue组件实现进度条效果
Jun 06 Javascript
JS猜数字游戏实例讲解
Jun 30 Javascript
手动实现vue2.0的双向数据绑定原理详解
Feb 06 Vue.js
详解TypeScript中的类型保护
Apr 29 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数组函数
2008/08/18 PHP
php生成xml简单实例代码
2009/12/16 PHP
php错误、异常处理机制(补充)
2012/05/07 PHP
yii框架表单模型使用及以数组形式提交表单数据示例
2014/04/30 PHP
PHP类中的魔术方法(Magic Method)简明总结
2014/07/08 PHP
php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
2014/07/18 PHP
PHP易混淆函数的区别及用法汇总
2014/11/22 PHP
Yii框架实现记录日志到自定义文件的方法
2017/05/23 PHP
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
JS判断页面是否出现滚动条的方法
2015/07/17 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
ajax 提交数据到后台jsp页面及页面跳转问题
2017/01/19 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
Vue学习笔记之表单输入控件绑定
2017/09/05 Javascript
Angular表格神器ui-grid应用详解
2017/09/29 Javascript
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
详解jQuery如何实现模糊搜索
2019/05/10 jQuery
Echarts在Taro微信小程序开发中的踩坑记录
2020/11/09 Javascript
[02:43]中国五虎出征TI3视频
2013/08/02 DOTA
[01:08:00]Fnatic vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[03:43]TI9战队采访——PSG.LGD
2019/08/22 DOTA
Python基础教程之正则表达式基本语法以及re模块
2016/03/25 Python
深入理解Python中变量赋值的问题
2017/01/12 Python
实践Vim配置python开发环境
2018/07/02 Python
pandas值替换方法
2018/07/10 Python
Python 学习教程之networkx
2019/04/15 Python
对Python 检查文件名是否规范的实例详解
2019/06/10 Python
Django中间件拦截未登录url实例详解
2019/09/03 Python
Pytorch mask-rcnn 实现细节分享
2020/06/24 Python
世界第一冲浪品牌:O’Neill
2016/08/30 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
维多利亚的秘密阿联酋官网:Victoria’s Secret阿联酋
2019/12/07 全球购物
学雷锋宣传标语
2014/06/25 职场文书
Django显示可视化图表的实践
2021/05/10 Python
CSS变量实现主题切换的方法
2021/06/23 HTML / CSS
警用民用对讲机找不同
2022/02/18 无线电