Programing

순수함수란

Yukart 2022. 5. 16. 21:02
반응형

순수함수란

  • 동일한 인자가 들어갈 경우 항상 같은 값이 나와야 한다.
  • 부수적인 효과가 일어나면 안 된다.
  • return 값으로만 소통한다.
  • 순수함수는 평가 시점이 중요하지 않다.만약 순수함수가 아니라면 동일한 인자를 넣어도 다른 값이 나오는 경우 어떠한 시점에서 함수를 평가할지가 굉장히 중요한데 순수함수는 동일한 인자를 넣으면 항상 같은 값이 나오기 때문에 굳이 평가시점을 따질 필요가 없다.
function add(a, b) {
        return a + b;
      }

      console.log(add(10, 5));
      console.log(add(10, 5));
      console.log(add(10, 5));

생각

어디든 붙일 수 있는 레고형태로 만든다고 보여진다. 전역 변수나 다른 인자 값을 가지고 오지 않는 한 메서드 안에서 모두 해결하는 형태

만능이라고는 생각지 않는다. 이런 패턴의 코딩 또한 각자 구현할 프로그램에 적재적소에 판단하여 잘 구현하면 베스트라고 생각함.

의문

들어오는 인자의 값을 바꾸면 안되나?

var obj1 = {val : 10};
function add4(obj, b){
    obj.val += b;
}

들어오는 인자에 영향을 주지 않고 값만 바꾸면 이것도 순수함수

반응형

'Programing' 카테고리의 다른 글

IoT-Thread Protocol 정리  (0) 2022.09.01