Closure, Lexical environment
Closure
함수형 프로그래밍에서의 객체다.
“A closure is the combination of a function and the lexical environment within which that function was declared.”
함수가 선언됐을 때의 렉시컬 환경(Lexical environment)과의 조합이다.
https://poiemaweb.com/js-closure 참고
Lexical environment
함수형 프로그래밍에서 객체(함수, {...}, 스크립트)는 렉시컬 환경이라 불리는 internal hidden associated object를 갖는다.
- Lexical = field
- environment = valiable 공간
const Test = () => {
// Lexical environment
return (
<>
<h2>테스트</h2>
</>
);
};
react에서의 컴포넌트를 예시로 들어보면 Lexical environment의 영역은 다음과 같다. 기능과 속성의 집합이기 때문에 Test 컴포넌트는 객체다.
함수형 프로그래밍은 객체를 멀리하여야 한다.
하지만 react는 클로저 형태이기 때문에 객체다.
...? 무상태프로그래밍을 해야 하는데 말이 되지 않는다.
그래서 함수형프로그램이 가능하게 하기 위해서 객체가 아닌 함수 = 순수함수가 필요하다.
그래서 나온게 Redux
Author And Source
이 문제에 관하여(Closure, Lexical environment), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@s_keyyy/Closure-Lexical-environment저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)