JavaScriptにおけるsetTimeout()とset Interval()の使用と区別

2865 ワード

今日はちょうどsetTimeout()の判例を見て、判例の解析でsetTimeout()とsetInterval()の使用の違いに言及しましたが、理論を比較しました.
自分もまとめて、例を書いて理解してください.
       まずこの二つの方法の具体的な時にどのように使うかを話します.
1、set Timeout()方法
      この方法はすべてのブラウザでサポートされています.setTimeout()はwindowに属するmethodですが、私たちはすべてwindowというトップレベルの物件の名前を略しています.これは使います.
時間を設定すると、指定されたメニューが実行されます.
      指定されたミリ秒数の後に関数または計算式を呼び出すために、setTimeout()メソッドを使用します.  
      文法:setTimeout(code,milisec)
      パラメータ:code(必須):呼び出す関数の後に実行するJavaScriptコード列.milisec(必須):コード実行前に待つミリ秒数.  
      ヒント:setTimeout()はcode一回だけ実行します.何度も呼び出す場合は、setInterval()を使用するか、またはコード自体に再度setTimeoutを呼び出すようにしてください().
      基本的な文法を見てから、簡単な例を書いてこれの使い方を説明します.
コードは以下の通りです



    


    

setTimeout()

!

setTimeout("alert(' !')", 3000 )
      私たちはウェブページを3秒開けたら、一つの枠を弾きます.でも、一回だけ弾けます. set Timeout()は自動的に繰り返されません.ロード後の遅延指定です.
時間は一回の表式を行います.
     もちろん、setTimeout()に関数を実行させてもいいです.一回ではなく、何回も繰り返し実行できます.
コードは以下の通りです



    
    
        var x = 0;
        function countSecond()
        {
            x = x+1;
            document.haorooms.haoroomsinput.value = x;
            setTimeout("countSecond()", 1000)
        }
    




countSecond();
       実現する方法は、関数自体を繰り返し起動させることです.
2、set Interval()方法
     set Interval()メソッドは、指定された周期(ミリ秒で)関数または計算式を呼び出すことができます.set Interval()メソッドは、関数を停止せずに呼び出します. 
clear Intervalが呼び出されたり、ウィンドウが閉じられたりします.set Interval()によって返されたID値は、clear Interval()方法のパラメータとして利用できる.     文法:set Interval(code,milisec[,lang])
     パラメータ:コードが必要です.呼び出す関数または実行するコード列.milisecは必須です.code間の時間間隔をミリ秒で実行または呼び出します.
     戻り値:Window.clearInterval()に渡すことで、codeの周期的な実行値をキャンセルすることができます.
     3秒ごとに一つの枠をはじきたいなら、どうやって実現しますか?
コードは以下の通りです



    
    Title





    function test(){
        this.name = "setInternal";
        this.waitMes = function(){
            var that = this;
            setInterval(function(){
                alert(that.name);
            },3000);
        }
    }
    var te = new test();
    te.waitMes();

       set Interval()は、ロード後、指定された時間ごとに式を実行します.
3、違います
     以上から分かるように、setTimeoutとsetintervalの一番大きな違いは:
    1)setTimeoutは一回しか運転していません.つまり、設定された時間が来たら、指定コードを実行します.運転が完了したら終了します.実行しているコードの中で再度実行したら同じです.
のセットTimeoutコマンドを実行すると、ループ運転ができます.(つまり循環運転するには、機能自体が再度setTimeoutを呼び出す必要がある().setintervalは循環運行しています.
設定時間間隔まで指定コードをトリガします.これは本当のタイマーです.
    2)setintervalは簡単に使えますが、setTimeoutは柔軟で、いつでもループを終了できます.また、固定されていない時間間隔で運行するように設定できます.
一回は1秒、二回目は2秒、三番目は3秒です.