1 js中定时器分为两种:setInterval和setTimeout, 但是在代码的执行中,定时器的优先级最低,系统里其他不在执行的时候,它才开始。例子如下:
2
3 <script>
4 window.onload=function(){
5 setInterval(function(){
6 alert(1);
7 },10);
8 for(var i=0;i<1000000;i++){
9 for(var j=0;j<1000000;j++){
10 var a=10;
11 a*=5;
12 }
13
14 }
15 alert(a);
16 };
17 </script>
18
19 定时器里面的执行时间为10毫秒, for循环里面为100万毫秒。打开页面的时候一直处于刷新状态,而不是先弹出1, 刷新一段时间后,先弹出50;再弹出1;
20
21
22 第二个例子:
23
24 <script>
25 window.onload=function (){
26 var oMin=document.getElementById('min');
27 var oSec=document.getElementById('sec');
28 var oMin2=document.getElementById('min2');
29 var oSec2=document.getElementById('sec2');
30
31 var start=new Date();
32 var s2=0;
33
34 setInterval(function (){
35 var now=new Date();
36
37 var s=parseInt((now.getTime()-start.getTime())/1000);
38
39 s2+=0.01;
40
41 oMin.innerHTML=parseInt(s/60);
42 oSec.innerHTML=s%60;
43
44 oMin2.innerHTML=parseInt(s2/60);
45 oSec2.innerHTML=parseInt(s2%60);
46 }, 10);
47
48 document.getElementById('div1').innerHTML=new Date();
49 };
50 </script>
51 </head>
52
53 <body>
54 <div id="div1"></div>
55 <span id="min">00</span>:<span id="sec">00</span><br>
56 <span id="min2">00</span>:<span id="sec2">00</span>
57 </body>
58 </html>
59 上下两个秒表经过一段时间后纯在了时间差 问题出现在s2+=0.01; 定时器会受系统其它函数的影响,因而影响其性能。导致存在误差-------也就是说以后遇到时间的时候,尽量用系统的时间来处理。比如:
60
61 秒表:
62
63 var start=new Date();
64
65 setInterval(function(){
66
67 var now=new Date();
68 var s=parseInt((now.getTime()-start.getTime())/1000);
69
70 },1000),
71
72 也可以实现秒表效果。

  

js定时器的一些小问题的更多相关文章

  1. js定时器的使用(实例讲解)

    在javascritp中,有两个关于定时器的专用函数,分别为: 1.倒计定时器:timename=setTimeout("function();",delaytime);2.循环定 ...

  2. 原生JS实现的h5小游戏-植物大战僵尸

    代码地址如下:http://www.demodashi.com/demo/12755.html 项目介绍 本项目是利用原生js实现的h5小游戏-植物大战僵尸,主要结合了一下自己对于h5小游戏的理解,结 ...

  3. JS定时器做物体运动

    JS定时器是函数 setInterval(函数体/函数名  , 时间) 清楚定时器 clearInterval(函数) 时间单位(毫秒) 1000毫秒  = 1秒 首先我们要知道用JS定时器能干什么? ...

  4. JS定时器使用,定时定点,固定时刻,循环执行

    JS定时器使用,定时定点,固定时刻,循环执行 本文概述:本文主要介绍通过JS实现定时定点执行,在某一个固定时刻执行某个函数的方法.比如说在下一个整点执行,在每一个整点执行,每隔10分钟定时执行的方法. ...

  5. JS定时器不可靠的原因及解决方案

    前言 在工作中应用定时器的场景非常多,但你会发现有时候定时器好像并没有按照我们的预期去执行,比如我们常遇到的setTimeout(()=>{},0)它有时候并不是按我们预期的立马就执行.想要知道 ...

  6. 移动Web与js定时器暂停或不准确计时的问题解决

    PC 上的 Firefox.Chrome 和 Safari 等浏览器,都会自动把未激活页面中的 JavaScript 定时器(setTimeout.setInterval)间隔最小值改为 1 秒以上: ...

  7. 我在 impress.js 中学到的小套路

    我在 impress.js 中学到的小套路 写在开篇 作为了一个自学 JavaScript 才一个月的新手,前几天“妄图”研究 jQuery-3.1.0 源码,结果自然是被虐得死去活来.机缘巧合之下, ...

  8. js定时器 特定时间执行某段程序的例子

    定时器想必大家并不陌生吧,在本文为大家详细介绍下js中是如何实现定时器的,具体原理及代码如下. 例子: $(function(){ var handler = function(){ //www.jb ...

  9. 移动端无法复制:使用clipboard.js碰到的一个小问题

    移动端无法复制:使用clipboard.js碰到的一个小问题   直接看下面的代码:在移动端访问,点击,能正常复制. <html> <head> <meta http-e ...

随机推荐

  1. javascript Array 方法学习

    原生对象Array学习 Array.from()   从类似数组的对象或可迭代的对象返回一个数组 参数列表 arraylike  类似数组的对象或者可以迭代的对象 mapfn(可选)   对对象遍历映 ...

  2. Iscroll应用文档

    Iscroll是一个非常不错的区域滑动插件. 不过它有个小小的不足,就是它的说明文档. 全英文不说,整理的也不咋好,官网上看着很乱,不容易查阅. 因此上网找了一些相关的文档说明并加以整理. Iscro ...

  3. SharePoint 错误集 3

    1. workflow 流程走不下去,报 workflow fails to run 的错误 请确保下面二个service要么都start,要么都stop: Microsoft SharePoint ...

  4. Android logcat

    logcat是Android中一个命令行工具,可以用于得到程序的log信息. 基本命令 logcat使用方法如下所示: [adb] logcat [<option>] ... [<f ...

  5. 关灯游戏源码(iOS)

    就是点一下灯 它本身和周围4盏灯会变色 ViewController.m文件 #import "ViewController.h" #import "UIView+cha ...

  6. 当碰到非ARC写的文件时在ARC环境下运行报错时解决办法

  7. RxJava结合Retrofit和Volley简单比较

    通过使用Retrofit+RxJava和Volley获取知乎日报消息,比较两者的使用区别. 文中 RR:代指Retrofit+Rxjava 主要两个方面使用 使用两者获取Json数据,使用Gson解析 ...

  8. iOS之 PJSIP静态库编译(三)

    dada哪个所有静态库编译完成后还是不能运行那个demo,提示你找不到arm**.a 你lipo后要记得吧合并成.a  名字更改成你最后编译版本生成的.a名字....... 或者吧所有库add到你的工 ...

  9. Effective Java 41 Use overloading judiciously

    The choice of which overloading to invoke is made at compile time. // Broken! - What does this progr ...

  10. 《SQL Server企业级平台管理实践》读书笔记——SQL Server如何设置自动增长和自动收缩项

    SQL Server允许用户设置数据库初始值和最大值,可以通过自动增长或者自动收缩进行配置.通过这些配置,我们可以防止数据库空间问题而导致的应用程序修改失败或者SQL Server磁盘空间耗尽的事情发 ...