18呼び出しと転送関数


今日やったこと

伝達関数:

  function doSomething(cal) {
    let c = document.getElementById('num1');
    let d = document.getElementById('num2');
    return cal(c, d);
  }

  function add(a, b) {
    const sum = a + b;
    return sum;
  }

  console.log(doSomething(add));
  console.log(doSomething(add(2, 3)); // error
doSomething(add)::add関数自体をパラメータとして使用できます.(コールバック関数…?doSomethingとaddの合計…?)
::データを受信して演算する場合、コードはより簡潔になります.

関数呼び出し時

  function doSomething(cal) {
    console.log(cal);
  }

  function add(a, b) {
    const sum = a + b;
    return sum;
  }

  doSomething(add(2, 3)); // 5

  let c = document.getElementById('num1');
  let d = document.getElementById('num2');
  doSomething(add(c, d));  
doSomething(add(2, 3));:互換性が悪い.let c = document.getElementById('num1'); let d = document.getElementById('num2'); doSomething(add(c, d));::コードが長くなると複雑になり、理解に時間がかかります.