初学JavaScript,用JavaScript编写了一个计时器。

设计思想:

1、借助于Date()对象,来不断获取时间点;

2、然后用两次时间点的毫秒数相减,算出时间差;

3、累加时间差,这样就能把计时精确。

ps:

没在网上看到有这样的方法,一般都是用的setinterval,编程语言自带的延时,时间控制都有比較大的误差;

所以用系统时间相减的方法控制精准,并以本例显示三位毫秒的数字印证精确度,设置的是100毫秒,而Js本身会有误差;

这个程序能够避免不精确的问题。

本例互相交流用,并迫切希望得到的读者的想法及建议。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
var tFlag = 0;
var tPass = 0;
function timer(id) {
if (tFlag != 0) {
var tNew = new Date().getTime();
tPass = tPass + (tNew - tFlag);
tFlag = tNew; } else {
tFlag = new Date().getTime();
}
setTimeout("timer('" + id + "')", 100);
var ml = tPass % 1000;
var sc = Math.floor((tPass / 1000) % 60);
var mi = Math.floor((tPass / 1000 / 60) % 60);
var hr = Math.floor((tPass / 1000 / 60 / 60) % 24);
var dy = Math.floor(tPass / 1000 / 60 / 60 / 24);
var info = dy + "天" + hr + "时" + mi + "分" + sc + "秒" + ml + "毫秒";
document.getElementById(id).innerHTML = info;
}
</script>
</head>
<body>
<button type="button" onclick="timer('ptime')">
開始计时
</button>
<p id="ptime"></p>
</body>
</html>

最新文章

  1. php实现文件上传与下载(中)
  2. 【leetcode❤python】 165. Compare Version Numbers
  3. Cocos2d-x3.3RC0 Cpp-test分析之NewAudioEngineDemo(转:http://blog.csdn.net/yuxikuo_1/article/details/41081453)
  4. static/final
  5. Marvel – 将图像和源文件转换成互动,共享的原型
  6. jquery------显示加载的js时出现中文乱码解决方法
  7. hadoop浅尝 第一个hadoop程序
  8. Matlab spline
  9. android脚步---使用framelayout实现霓虹灯效果
  10. CG之refract函数简单实现
  11. linux下登陆MongoDB的两种方式
  12. 解决VS2017编译后的EXE文件不能在其他电脑上运行的问题
  13. 口碑点餐相关问题FAQ
  14. Before NOIP 2018
  15. Java编程基础篇第二章
  16. numpy.random随机数生成
  17. 树莓派 CSI摄像头 No data received from sensor. Check all connections, including the Sunny one on the camera board
  18. 1001.A+B Format (20) 解题
  19. 在Silverlight 5 项目中创建单元测试项目
  20. Go基础篇【第6篇】: 内置库模块 flag

热门文章

  1. T-SQL基础(5) - 表表达式
  2. AWR报告生成
  3. Tuxedo学习门户网站
  4. js匀速运动停止条件
  5. windows Azure平台开发
  6. 移动应用开发(IOS/android等一下)在一般图像缓存方案评述(附流程图)
  7. 在JBuilder8中使用ANT
  8. Linux中查看socket状态(转)
  9. RH033读书笔记(7)-Lab 8 Introduction to String Processing
  10. js字的数目的计算方法(与word计算公式为)