TIL_20210324


コールバック関数

  • は、関数の引数として関数を渡し、必要に応じて「後で呼び出す」
  • let ask = (question, yes, no) => {
      if (confirm(question)) yes()
      else no();
    }
    let showOk = () => {
      alert( "동의하셨습니다." );
    }
    let showCancel = () => {
      alert( "취소 버튼을 누르셨습니다." );
    }
    ask("동의하십니까?", showOk, showCancel);
  • ユーザが「yes」と回答するとshowOkはコールバックとなり、「no」と回答するとshowCancelはコールバック
  • となる.

    関数宣言vs関数式

  • 関数宣言:関数はプライマリコードストリームの間に独立した構文で
  • 存在する.
    function sum(a, b) {
      return a + b;
    }
  • 関数宣言は、関数宣言を定義する前に呼び出すことができる
    sayHi("Chungsik"); // Hello, Chungsik
    
    function sayHi(name) {
      alert(`Hello, ${name}`);
    }
  • 関数宣言は、関数宣言のコードブロック内でのみ有効であり、ブロック外では
  • にアクセスできません.
    let age = 16;
    
    if (age < 18) {
      welcome(); // 실행
      function welcome() {
        alert("안녕!");
      }
      welcome(); // 실행
    } else {
      function welcome() {
        alert("안녕하세요!");
      }
    }
    welcome(); // Error: welcome is not defined
    // 함수 표현식으로 작성시 Error 없이 스코프 밖에서도 사용 가능
  • 関数式:式または構築(構文構造)で
  • を作成します.
    let sum = (a, b) => {
      return a + b;
    };
  • 関数式は、実際に実行されたストリームがこの関数に到達したときに関数を生成する.したがって、フロー到達関数を実行する場合、この関数は
  • で使用することができる.
    sayHi("Chungsik"); // error!
    
    let sayHi = (name) => {
      alert(`Hello, ${name}`);
    };