当前位置:软件学堂 > 资讯首页 > 网络编程 > 编程其他 > JS实现精确到千分之一秒

JS实现精确到千分之一秒

2012/11/5 19:12:30作者:佚名来源:网络

移动端

【实例名称】

JS实现精确到千分之一秒

【实例描述】

JavaScript中的日期对象只能显示到秒:本例学习如何显示更精确的时间,类似于体育运动中常用的跑表。

【实例代码】

<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>标题页-学无忧(www.xue51.com)</title> <SCRIPT LANGUAGE="JavaScript"> var ms = 0; var state = 0; function startstop() {     if (state == 0) {                     //开始走秒         state = 1;         then = new Date();               //获取当前时间         then.setTime(then.getTime() - ms);     }     else {                               //结束走秒         state = 0;         now = new Date();         ms = now.getTime() - then.getTime();         document.form1.time.value = ms;    } } function timeReset()                     //重置时间的方法 {     state = 0;     ms = 0;     document.form1.time.value = ms; } function display()                         //开始显示时间 {     setTimeout("display();", 1);          //设置定时器     if (state == 1)  {now = new Date();    //获取当前的新时间     ms = now.getTime() - then.getTime();   //通过时间差计算豪秒     document.form1.time.value = ms;        //显示毫秒     } } </SCRIPT> </head> <body onLoad="display()">     <form name="form1">         本例的时间可以准确到千分之一秒<br>         计时:         <INPUT TYPE="text" Name="time" /><br />         <INPUT TYPE="BUTTON" Name="btnSet" VALUE="开始/停止" onClick="startstop()" />         <INPUT TYPE="BUTTON" NAME="reset" VALUE="重置" onClick="timeReset()" />     </form> </body> </html>

【运行效果】

 精确到千分之一秒运行效果

【难点剖析】

本例的重点是毫秒的计算。当用户单击“开始/停止”按钮时,首先判断现在是否有时问在显示,有则表示要停止显示时间,否则开始显示时间。开始计时时,首先要获取当前时间,然后每隔一毫秒修改一下当前时间。最终显示的内容是当前时间减去初次显示时的时间,结果为毫秒值。


【源码下载】

为了JS代码的准确性,请点击:精确到千分之一秒 进行本实例源码下载 

标签: 时间