1. 程式人生 > >js,setTimeout與setInterval的用法

js,setTimeout與setInterval的用法

1.setTimeout與setInterval的區別

  setTimeout:

    1.直接使用的話,按照指定 的時間,只執行一次傳入的函式引數。

    2.函式的終止使用clearTimeout。

  setInterval:

    1.直接使用的話,按照指定的時間,迴圈執行傳入的函式引數    2.函式的終止使用clearInterval。

2.setTimeout與setInterval的用法

  setsetTimeout:

    1.直接使用:setsetTimeout(function(data){},1000,param1);

       使用時可以傳入多個個引數,引數的作用如下。

          1.code/function 必需。要呼叫一個程式碼串,也可以是一個函式。

          2.’milliseconds 可選。執行或呼叫 code/function 需要等待的時間,以毫秒計。預設為 0。

          3.param1, param2, ... 可選。 傳給執行函式的其他引數(IE9 及其更早版本不支援該引數)。

    2.使用變數呼叫,並終止setsetTimeout用法。

var myVar;
 
function myFunction() {
    myVar = setTimeout(function(){ alert("Hello") }, 3000);
}
 
function myStopFunction() { clearTimeout(myVar); }

  setInterval

    1.直接使用:setInterval(function, milliseconds, param1, param2, ...);

       使用時可以傳入多個個引數,引數的作用如下。

          1.code/function 必需。要呼叫一個程式碼串,也可以是一個函式。

          2.’milliseconds 可選。執行或呼叫 code/function 需要等待的時間,以毫秒計。預設為 0。

          3.param1, param2, ... 可選。 傳給執行函式的其他引數(IE9 及其更早版本不支援該引數)。

    2.使用變數呼叫,並終止setInterval用法。

var myVar = setInterval(function(data){ }, 1000);
 
function myStopFunction() {
    clearInterval(myVar);
}

3.setTimeout實現setInterval功能並實現自我終止

var myVar,i=0;
 
function myFunction() {
    myVar = setTimeout(function(){     i++;    if(i>21){      myStopFunction    }else{
      mayVar    }  }, 3000);
}
 
function myStopFunction() {
    clearTimeout(myVar);
}