ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JavaScript ES6 함수형 자바스크립트 기본
    프로그래밍/JavaScript 2019. 5. 26. 15:48

    JavaScript 평가

    • JavaScript 코드가 계산되어 값을 만드는 것

    JavaScript 일급

    • 값으로 사용 가능
    • 변수에 값 저장 가능
    • 함수의 인자 & 결과로 사용 가능
    <script>
        const a = 10;    // 변수에 담을수 있다
        const add10 = a => a+10;    // a는 인자로 전달 가능
        const r = add10(a);    // 함수의 리턴값으로 사용 가능
        console.log(r);
    </script>

    JavaScript 일급 함수

    • 함수를 값으로 사용 가능
    • 조합성과 추상화의 도구
    <script>
        const add5= a => a+5;
        console.log(add5);    // a+5;
        console.log(add5(10));    // 15
    
        const f1 =  () => () =>1;
        console.log(f1());    // () => 1
    
        const f2 = f1();
        console.log(f2);     // () => 1
        console.log(f2());
    </script>

    JavaScript 고차 함수

    • 함수를 값으로 사용하는 함수
    • 함수를 받아서 인자로 사용하는 안에서 실행하면서 원하는 인자를 적용하는 함수 (어플리케이티브 프로그램)
      <script>
        const apply1 = f = > f(1);
        const add2 = a => a+2;
      </script>

    함수를 만들어 리턴하는 함수 (클로저 리턴 함수)

    <script>
        const returnFunction = a => b => a+b;
        const add20 = returnFunction(20);
        console.log(add20(5));    // 25;
        console.log(add20(10));    // 30;
    </script>

    과정 후기

    분명 Udacity Front-End 강의 때 나왔던 내용인것같은데 아무래도 ES6 위주의 학습이 아닌 기본과정이다보니 처음보는 내용들도 있고 용어들도 알게되어 좋았습니다. 코드들을 보니 대략적으로 어떻게 작동하는지는 이해가 가는데 이를 이미 개발한 프로그램에 어떻게 적용할지에 대해서는 아직 감이 오지않은 상태입니다. 다만 함수 안에 또 함수를 사용하여 값으로 사용할수 있다는 개념에 대해서는 인지하게 되었고 Node.js 앱에 어떻게 적용해볼까 라는 생각을 해보게 되는 계기가 되었습니다. 최근에 기존의 Node.js 앱이 기능적으로 작동은 하지만 코드 가독성으로 볼때는 좋지 않다는 생각을 자주 하게되었는데 이런 과정을 통해서 코드를 개선할수 있지 않을까 생각하고 있습니다.

    댓글 0

Designed by Tistory.