JavaScript | setTimeout/setInterval


📌 コールスケジューリング
一定時間後に所定の関数を実行(呼び出す)ことを許可する

  • 実施方法setTimeout , setInterval
  • 📌 setTimeout
    一定時間後に関数を実行
    🔹 使用方法setTimeout(함수, 시간, 인수)

  • パラメータ

  • 最初の
    実行される関数(一定時間後)

  • 2番目
    n/a.時間

  • 3番目
    関数の引数

  • 計画タスクを削除するにはclearTimeout運転
  • 🔹 遅延が0の場合
    直ちにxを実行

  • n/a.理由
    現在実行中のスクリプトが終了すると、スケジューリング関数が実行されます.
    少なくとも直ちに0 xを実行します.
    ブラウザには基本的に4ミリ秒の待機時間があります.(0は少なくとも4 ms以上かかります.)

  • サンプルコード
  •     setTimeout(function(){
          console.log(2)
        }, 0)
        console.log(1)
        // 콘솔에 1 다음 2가 찍힘
    🔹 サンプルコード
  • 3秒後ログのコード
  •     function fn(){
          console.log(3)
        }
        
        setTimeout(fn, 3000) // 3000은 3초
        
        // 위와 같은 코드 (함수를 전달하지 않고 직접 작성)
        setTimeout(function(){
          console.log(3)
        }, 3000)
  • 買い付けがあれば
  •     function showName(name){
          console.log(name)
        }
        
        setTimeout(showName, 3000, 'Mike') // 'Mike'
  • clearTimeout利用
  •     let timer = setTimeout( someFunction, 1000 );
        
        clearTimeout(timer); // 아무 일 없음 
    📌 setInterval
    繰り返し実行
    🔹 使用方法
  • setTimeout同じ

  • 中止するには、次の手順に従います.clearInterval運転
  • 🔹 サンプルコード
  • [1]n秒ごとに因数をとる関数
  •     function showName(name){
          console.log(name)
        }
        
        const tid = setInterval(showName, 3000, 'Mike' ) // 3초 마다 'Mike' 찍힘
        
        ---
        
        // clearInterval을 통해 중단
        clearInterval(tid)
  • [2]接続の経過時間秒の関数
  •     let num = 0;
        
        function showTime() {
          console.log(`안녕하세요. 접속하신지 ${num++}초가 지났습니다.`);
        }
        
        setInterval(showTime,1000)
        // 5초 동안만 보여주려고 할 경우
        // 방법: 5번 실행 후, clearInterval한다.
        
        let num = 0;
        
        function showTime() {
          console.log(`안녕하세요. 접속하신지 ${num++}초가 지났습니다.`);
          
          if(num>5){
            clearInterval(tid)
          }
        }
        
        const tid = setInterval(showTime,1000)
    リファレンス
  • ハマーJavaScript中級コード
  • モダンJavaScriptチュートリアル