admin 管理员组文章数量: 1087139
2024年3月6日发(作者:js event loop)
Javascript获取时间的方法
Javascript gettime方法定义和用法
getTime()方法可返回距1970年1月1日之间的毫秒数。
C#中的ticks
此属性的值表示自0001年1月1日午夜12:00:00以来经过的以100纳秒为间隔的间隔数。
对几个词来说明一下,纳秒也叫毫微秒,相互之前的转换关系是
1秒=10^3毫秒
1毫秒=10^3微秒
1微秒=10^3纳秒
现在要用c#做出这种js的gettimer的效果,首先要转换成统一的单位,我们以转成百纳秒为单位
然后做到的就是统一的时间取得点,以1970年1月1日为起点,这时就要算出来,从0001年1月1日到1970年1月1日经过了多少纳秒
可以通过以下代码得知一个常量privatelonglLeft=6200000;
1. ine(("1970-1-1").Ticks);
比如我现在要得到"2009-7-1508:33:19"的毫秒数
首先转成UTC时间
2. DateTimedt1=Time("2009-7-1508:33:19").ToUniversalTime();
然后得到从1970年1月1日到刚才那个时间的百纳秒数
longSticks=(("1970-1-1").Ticks)
最后因为要转成js的效果,所以把百纳秒转成毫秒,Sticks/10000000;最后得到的结果是1247617999
同理把这个毫秒数转成本地时间就返过来推,北京与utc是相差8个小时的,所以最后用ToLocalTime转成本地时间就可以解决时差问题了。
以下是Javascript gettime代码
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
privatelonglLeft=6200000;
//将数字变成时间
publicstringGetTimeFromInt(longltime)
{
longEticks=(long)(ltime*10000000)+lLeft;
DateTimedt=newDateTime(Eticks).ToLocalTime();
ng();
}
//将时间变成数字
publiclongGetIntFromTime(DateTimedt)
{
DateTimedt1=ersalTime();
longSticks=(-lLeft)/10000000;
returnSticks;
}
版权声明:本文标题:Javascript获取时间的方法 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1709731848a544653.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论