React

순수함수 구분하기

mellomello.made 2022. 6. 16. 00:31
순수함수란?
동일한 input에 동일한 output이 나와야한다.
즉 Side Effect가 없는 함수로  외부 상태를 바꿀 수 없는 함수이다.

[❗️]Math.sqrt(x)는 전달 인자 x의 제곱근 값을 구하는 메서드입니다.

주어진 인자에 대해 항상 동일한 결과값을 리턴하므로 순수 함수입니다.


[❗️] Ajax 요청은 외부 상태를 바꾸기 때문에 해당 기능을 가진 함수는 순수 함수가 아닙니다.

 

A. sum 함수가 외부의 변수인 c를 사용하였습니다. 이 경우 인자로 받아오지 않은 변수 c가 변함에 따라 함수의 결괏값이 달라지므로 순수 함수가 아닙니다.

 

B. sum 함수가 내부에서 외부의 변수인 c를 변경하였습니다. 외부 상태에 영향을 미치는 Side Effect를 가지므로 순수 함수가 아닙니다.

 

 

C. 외부 객체 obj를 참조하는 것으로 보일 수 있지만, 인자로 받아온 객체를 참조하는 것이므로 순수 함수가 맞습니다.

 

 

D. sum 함수가 외부 객체 obj의 값을 변경하는 형태이므로 순수 함수가 아닙니다.

'React' 카테고리의 다른 글

state를 세팅하는 2가지 방법  (0) 2022.06.29
리액트 JSX, State, 생명주기 메서드  (0) 2022.06.16
Events in React  (0) 2022.06.15
React Router(react-router-dom) 라이브러리 설치  (0) 2022.06.04
REACT JSX 문법  (0) 2022.06.03