[javascript]関数式プログラミングの基礎を築く


関数プログラミングとJavaScript ES 6+課を聞いて整理した内容
便利なコードの上部にあるconsole.log変数を含むコードを作成します.
<script> const log = console.log; </script>

評価

  • コード計算による値
  • の作成

    一級


    価格は
  • .
  • 変数に含めることができます.const a = 10
  • 関数のパラメータとして使用できます.const add10 = (a) => a + 10
  • 関数の結果として使用できます.const r = add10(a)
  • いちじかんすう

  • 関数を値として使用できます.
  • JavaScriptは1級です.
  • コンビネーションおよび抽象ツール
  • javascriptは1級で、組み合わせや抽象的なツールとしてよく使用できます.
  •   const add5 = (a) => a + 5;
      log(add5);
      log(add5(5));
    
      const f1 = () => () => 1;
      log(f1());
    
      constf2= f1();
      log(f2);
      log(f2());

    高次関数


    関数を値として扱う関数

    パラメータとして実行される関数の受信

  • apply1
  •   const apply1 = f => f(1); // 함수를 인자로 받아서 실행하는 함수
      const add2 = a => a + 2;
      log(apply1(add2)); // 3
      log(apply1(a => a - 1)); // 0
  • times
  •   const times = (f, n) => {
        let i = -1;
        while(++i < n) f(i);
      };
    
      times(log, 3);
      // 0
      // 1
      // 2
      times(a =>log(a+ 10), 3);
      // 10
      // 11
      // 12

    関数を作成して返される関数(モジュールを作成して返される関数)

  • addmaker
  •   const addMaker = a => b => a + b;
      constadd10= addMaker(10);
      log(add10); // b => a + b
      log(add10(5)) // 15