callback

6402 ワード

callback


  • 他の関数パラメータとして使用される関数.

  • イベントによって呼び出される関数.
  • 簡単に言えば、Aという関数の実行中、B関数はその完了を待たずに、A関数が呼び出されるまでB関数を実行する
    (または、待機してから実行することもできます)
    JavaScriptの非同期処理の問題を解決するために、特定の時点で呼び出す関数です.
    そのため、非同期方式を使用します.

    典型的なコールバック関数

    <button id="button" onclick="onClickButton();">버튼</button>
    <script>
    function buttonClick() {
    	alert("버튼을 눌렀습니다!!");
    }
    </script>
    HTMLのonclickではbuttonClick関数がブラウザのJavaScript APIからDOMイベントハンドラに渡され(登録)、このボタンにクリックイベントが発生するとイベントハンドラがコールバック関数を呼び出す.
    function fn_fakeAsync(callback){
      calback();
    }
    
    console.log("------- fn_fakeAsync 호출 직전 -------");
    
    fn_fakeAsync(function(){
      console.log("이게 비동기적으로 동작하길 바래");
    });
    
    console.log("------- fn_fakeAsync 호출 이후 -------");
    
    // 결과
    ------- fn_fakeAsync 호출 직전 -------
    이게 비동기적으로 동작하길 바래
    ------- fn_fakeAsync 호출 이후 ------
    
    

    setTimeout


    settimeoutは、コールバック関数の実行遅延をミリ秒指定する内蔵関数です.
    function fn_newCallBack(){
      console.log("비동기적으로 호출되고 싶다.");
    }
    
    console.log("-------  호출 직전 -------");
    
    setTimeout(fn_newCallBack, 3 * 1000); // 3초 뒤 콜백 호출
    
    console.log("-------  호출 이후 -------");
    
    //결과
    -------  호출 직전 -------
    -------  호출 이후 -------
    비동기적으로 호출되고 싶다.
    
    ソース-https://www.hanumoka.net/2018/10/24/javascript-20181024-javascript-callback/