setTimeout和setInterval的语法同样。它们都有两个參数。一个是将要运行的代码字符串。另一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将运行那段代码。

只是这两个函数还是有差别的。setInterval在运行完一次代码之后,经过了那个固定的时间间隔,它还会自己主动反复运行代码,而setTimeout仅仅运行一次那段代码。

差别:window.setTimeout("function",time);//设置一个超时对象。仅仅运行一次,无周期 

          window.setInterval("function",time);//设置一个超时对象,周期='交互时间'

停止定时: 

          window.clearTimeout(对象) 清除已设置的setTimeout对象

            window.clearInterval(对象) 清除已设置的setInterval对象

PerRefresh();
 
function
PerRefresh() {
     var today
=
new Date();
     alert("The
time is: "
 +
today.toString());
     setTimeout("showTime()",
5000);
}

一旦调用了这个函数PerReflesh,那么就会每隔5秒钟就显示一次时间

setInterval("PerRefresh()",
5000);
 
function
PerRefresh() {
     var today
=
new Date();
     alert("The
time is: "
 +
today.toString());
}

而setInterval却没有被自己所调用的函数所束缚,它仅仅是简单地每隔一定时间就反复运行一次那个函数。

仅仅要调用了setInterval("PerRefresh()", 5000)此函数,那么每隔5秒钟就会运行PerRefresh这个函数。

假设要求在每隔一个固定的时间间隔后就精确地运行某动作,那么最好使用setInterval。而假设不想因为连续调用产生互相干扰的问题,尤其是每次函数的调用须要繁重的计算以及非常长的处理时间,那么最好使用setTimeout。

setInterval 不断地运行指定代码直到调用clearInterval清除定时器对象

setTimeout 运行一次指定代码,使用clearTimeout清除定时器对象

setInterval和setTimeout都返回定时器对象标识符。用于clearInterval和clearTimeout调用

以下看自己 写的一个小样例:

<html>

<head>

<script type="text/javascript">

var i = 0;

var a;

function test(){

  a = setInterval("showTime()",5000);

}

function showTime(){

var today = new Date();

alert("the time is "+ today.toString());

 i++;

alert(i);

if(i ==2){

clearInterval(a);    //清除定时器须要传入一个对象(你要清除那个对象)

}

}

</script>

</head>

 <body>my first js setInterval and setTimeout function

<input type="button" value="setinterval" onclick="test();"></body>

</html>

JavaScript定时调用函数(SetInterval与setTimeout)的更多相关文章

  1. Javascript中的定时调用函数setInterval()和setTimeout()

    首先介绍这两个函数 一.setInterval() 按照指定的周期来调用函数或表达式,执行多次.(时间单位:ms) timer = setInterval("content =documen ...

  2. JavaScript函数setInterval()和setTimeout()正确的写法

    一.常规写法 1.1 不传参数 function a (x, y) { var i = 0; var b = function(){ console.log((x * y) + (i++)); } r ...

  3. js函数——setinterval和setTimeout

    1.window.setTimeout方法 该方法可以延时执行一个函数,例如: <script language="JavaScript" type="text/j ...

  4. JavaScript DOM 编程艺术·setInterval与setTimeout的动画实现解析

    先贴上moveElement()函数的大纲,为了方便观看,删了部分代码,完整版粘到文章后面. function moveElement(elementID,final_x,final_y,interv ...

  5. javascript函数setInterval和setTimeout的使用区别详解

    setTimeout和setInterval的使用 这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript.不过两者各有各的应用场景. 方 法 实际上,setTimeout和setIn ...

  6. 定时刷新页面SetInterval 和setTimeout -时间间隔可以动态设定

    JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延迟一段时间,再进行某项操作. setTimeout("function& ...

  7. Unity3D中的Coroutine及其使用(延时、定时调用函数)

    http://blog.csdn.net/nizihabi/article/details/47606887 一.Coroutine(协程)的概念和本质 在网上的一些资料当中,一直将Coroutine ...

  8. JavaScript setInterval(定时/延时调用函数)

    setInterval是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式.setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭. 由 ...

  9. JavaScript定时机制setTimeout与setInterval研究

    JavaScript的setTimeout与setInterval是两个很容易欺骗别人感情的方法,因为我们开始常常以为调用了就会按既定的方式执行, 我想不少人都深有同感, 例如 setTimeout( ...

随机推荐

  1. sklearn 词袋 CountVectorizer

    from sklearn.feature_extraction.text import CountVectorizer texts=["dog cat fish","do ...

  2. dns-sd._udp.<domain>. 域名发现 本质和MDNS同

    DNS Service Discovery is a way of using standard DNS programming interfaces, servers, and packet for ...

  3. MVC获取当前Controller/Action名称

    1.视图中获取: var actionName=ViewContext.RouteData.Values["action"].ToString().ToLower(); var c ...

  4. MyBatis多参数传递之注解方式示例--转

    原文地址:http://legend2011.blog.51cto.com/3018495/1015003 若映射器中的方法只有一个参数,则在对应的SQL语句中,可以采用#{参数名}的方式来引用此参数 ...

  5. jsp输出当前时间

    在jsp页面中输出完整的时间,格式为"年 月 日  时:分:秒" <% Date date = new Date(); SimpleDateFormat t = new Si ...

  6. HDU 4786Fibonacci Tree(最小生成树)

    Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...

  7. ListView优化-ViewHolder缓存

    安卓开发中ListView控件是一个使用频率相当的高级控件,通常用于展示一系列相似度极高的数据,当数据量极大或布局相当复杂时,ListView的性能优化就显得非常重要.所以在开发中不但功能上要满足,而 ...

  8. 几个提高效率的PHOTOSHOP秘密快捷键

    1.拖动选择 使用矩形选框工具,在画布上拖动(不要松开鼠标),这时按住空格键,然后移动鼠标,你会发现选区也跟着移动了. 2.左右流量文档 按住Cmd(Ctrl)键,上下滚动鼠标,你会发现文档的滚动条在 ...

  9. javascript ---(常用工具类的封装)

    1. type 类型判断 isString(o) { //是否字符串 return Object.prototype.toString.call(o).slice(8, -1) === 'String ...

  10. POJ——T 3255 Roadblocks|| COGS——T 315. [POJ3255] 地砖RoadBlocks || 洛谷—— P2865 [USACO06NOV]路障Roadblocks

    http://poj.org/problem?id=3255 Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 15680   ...