用&#106avascript脚本将当地时间转换成其它时区

脚本|转换

毫无疑问,用JavaScript脚本可以通过直接查看用户的时钟,方便地在网页上显示本地时间。但是,如果你想显示不同地区的时间—--例如,如果你的本部在别的国家,你想查看“本国”时间而非当地时间,又该怎么办呢?

要做到这一点,必须进行各种时间计算才能将当地时间转换为目的时间。本文将解释如何进行这些计算。

第一步:

事情的第一步是获得当地时间。在JavaScript中,这无疑可以通过初始化一个Data()对象来轻松完成。

// create Date object for current location

d = new Date();

通过调用Data()对象的getTime()方法,即可显示1970年1月1日后到此当时时间之间的毫秒数。

// convert to msec since Jan 1 1970

localTime = d.getTime();

第二步:

下一步,通过Data()对象的getTimezoneOffset()方法来找出当地时间偏移值。在缺省情况下,此方法以分钟显示时区偏移值结果,因此在早先的计算中要将此值转换成毫秒。

// obtain local UTC offset and convert to msec

localOffset = d.getTimezoneOffset() * 60000;

注意,getTimezoneOffset()方法的负返回值表示当地时间在全球标准时间(UTC)之前,而正返回值则表示当地时间在全球标准时间(UTC)之后。

注意:万一你想知道我是如何得到60000这个倍增因数的,记住1000毫秒等于一秒,而一分钟等于60秒。因此 ,将分钟转换成毫秒,要用60乘以1000等于60000。

第三步

将本地时间与本地时区偏移值相加得到当前国际标准时间(UTC)。

// obtain UTC time in msec

utc = localTime + localOffset;

这里,变量utc包含当前国际标准时间(UTC)。但是,此时间以1970年1月1日到现在所含有的毫秒数来表示。暂时让它这样表示,因为还要进行一些计算。

第四步

得到国际标准时间(UTC)后,再获得目标城市的国际标准时间(UTC)小时偏移值,把它转换成毫秒,再加上国际标准时间(UTC)。

// obtain and add destination's UTC time offset

// for example, Bombay

// which is UTC + 5.5 hours

offset = 5.5;

bombay = utc + (3600000*offset);

注意:万一你想知道我是如何得到3600000这个倍增因数的,记住1000毫秒等于一秒,而一小时等于3600秒。因此 ,将小时转换成毫秒,要用3600乘以1000等于3600000。

此时,变量bombay包含印度孟买城的当地时间。此当地时间以1970年1月1日到现在所含有的毫秒数来表示。显然,这不是很合理,因此我们还要进行一些计算。

第五步

通过初始化一个新的Data()对象,并调用此对象的toLocalString()方法,我们将前一步中计算得到的时间值转换成一个大家可以看得懂的日期/时间字符串。

// convert msec value to date string

nd = new Date(bombay);

document.writeln("Bombay time is " + nd.toLocaleString() + "<br>");

这样转换就完成了!

[1] [2] 下一页  

时间: 2024-10-30 05:38:20

用&#106avascript脚本将当地时间转换成其它时区的相关文章

用JavaScript脚本将当地时间转换成其它时区

javascript|脚本|转换 毫无疑问,用JavaScript脚本可以通过直接查看用户的时钟,方便地在网页上显示本地时间.但是,如果你想显示不同地区的时间---例如,如果你的本部在别的国家,你想查看"本国"时间而非当地时间,又该怎么办呢? 要做到这一点,必须进行各种时间计算才能将当地时间转换为目的时间.本文将解释如何进行这些计算. 第一步: 事情的第一步是获得当地时间.在JavaScript中,这无疑可以通过初始化一个Data()对象来轻松完成. // create Date ob

JavaScript 脚本将当地时间转换成其它时区_时间日期

但是,如果你想显示不同地区的时间---例如,如果你的本部在别的国家,你想查看"本国"时间而非当地时间,又该怎么办呢?要做到这一点,必须进行各种时间计算才能将当地时间转换为目的时间.本文将解释如何进行这些计算. 第一步: 事情的第一步是获得当地时间.在JavaScript中,这无疑可以通过初始化一个Data()对象来轻松完成. // create Date object for current location d = new Date(); 通过调用Data()对象的getTime()

编写Python脚本把sqlAlchemy对象转换成dict的教程

  这篇文章主要介绍了编写Python脚本把sqlAlchemy对象转换成dict的教程,主要是基于Python的model类构建一个转换的方法,需要的朋友可以参考下 在用sqlAlchemy写web应用的时候,经常会用json进行通信,跟json最接近的对象就是dict,有时候操作dict也会比操作ORM对象更为方便,毕竟不用管数据库session的状态了. 假设数据库里有一张post表,其中一种方法就是 ? 1 2 p = session.query(Post).first() p.__di

脚本-cadence si 工具将原理图转换成网表时出错,ERROR (OSSHNL-103)求解答!

问题描述 cadence si 工具将原理图转换成网表时出错,ERROR (OSSHNL-103)求解答! 如题:在使用脚本进行原理图到网表的转换时报错 ERROR (OSSHNL-103): Unable to open the design library 'lb' cell 'lbinvx1' view 'schematic'. Ensure that the cell view exists or the SKILL variable simDcmFilePath is correctl

将RFT录制的Java脚本转换成可读性好的测试用例

该方法首先通过调用 RFT 的 CMD 命令行接口实现测试脚本的录制,生成 Java 脚本:然后,解析 Java 脚本中的关键字.对象.操作等信息,将 Java 脚本转化成可视化的表格:最后,将可视化的表格经过处理转化成 HTML 文件保存.相信通过该方法可以有地提高测试人员的测试效率,减少测试人员的工作量,在实践中这种自动化方法也有着较好的应用效果. 随着现代信息技术的飞速发展,软件业竞争日趋激烈,软件系统日益复杂,对于软件功能.性能的要求不断提高,同时软件推出新版本的时间不断缩短.在这种情况

UTF-8转换成GB2312的全处理

主题:将UTF-8编码的字符串转化成GB2312的编码,没有对应编码的字符串转化为DEC; 的格式.如 회=>회 语言:PHP,Javascript 内容:浏览器用Javascript中encodeURI函数将字符串(包含非GB2312中字符)编码,GET请求到服务器,页面编码均为GB2312,服务器PHP脚本将请求数据转换成GB2312表示. 基础: 1. 单独使用iconv函数只能转换GB2312字符,外文字符无法转换 2. 没有现成的函数可以用 3. bindec()函数:将二进制格式的&qu

用PHP实现自动把纯文本转换成Web页面

最近,我的一个老朋友向我打电话求助.他从事记者的职业有多年了,最近获得了重新出版他的很多早期专栏的权利.他希望把他的作品贴在Web上;但是他的专栏都是以纯文本文件的形式保存的,而且他既没有时间也不想去为了把它们转换成为Web页面而学习HTML的知识.由于我是他电话本里唯一一个精通计算机的人,所以他打电话给我看我是否能够帮帮他. "让我来处理吧,"我说:"一个小时以后再给我打电话."当然了,当他几个小时以后打电话过来,我已经为他准备好了解决的方法.这需要用到一点点PH

python实现将汉字转换成汉语拼音的库

  本文实例讲述了python实现将汉字转换成汉语拼音的库.分享给大家供大家参考.具体分析如下: 下面的这个python库可以很容易的将汉字转换成拼音,其中用到了一个word.data 的字典,可点击此处本站下载. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 #!/usr/bin/env python # -*

用PHP自动把纯文本转换成Web页面

  最近,我的一个老朋友向我打电话求助.他从事记者的职业有多年了,最近获得了重新出版他的很多早期专栏的权利.他希望把他的作品贴在Web上;但是他的专栏都是以纯文本文件的形式保存的,而且他既没有时间也不想去为了把它们转换成为Web页面而学习HTML的知识.由于我是他电话本里唯一一个精通计算机的人,所以他打电话给我看我是否能够帮帮他. "让我来处理吧,"我说:"一个小时以后再给我打电话."当然了,当他几个小时以后打电话过来,我已经为他准备好了解决的方法.这需要用到一点点