반응형

클로저 3

클로저

클로저는 세 가지 스코프 체인을 가진다. 클로저 자신에 대한 접근 - 자신의 블록 내에 정의된 변수 외부 함수의 변수에 대한 접근 - 클로저 자신이 선언된 블록을 의미한다. 전역 변수에 대한 접근 내부 함수는 외부 함수의 변수뿐만 아니라 매개 변수에도 접근할 수 있다. 다만 외부 함수의 arguments 객체에는 접근할 수 없는데, 모든 함수에는 arguments가 자동으로 선언이 되기 때문이다. 클로저 함수 또한 자신만의 arguments가 존재하기 때문에 외부 함수의 arguments를 다른 변수에 저장하지 않는 한, 클로저는 외부 함수의 arguments에 접근할 수 없다. 클로저는 외부 함수의 변수에 대한 참조를 저장한다. 이는 클로저가 실제 값에 접근하는 것이 아닌 값의 참조에 접근한다는 것을 ..

IT/JS 2021.09.07

클로저(closure)

클로저는 아래의 글에서 간략하게 설명했었던 개념이다. 이번 글에서는 클로저에 대해 자세히 알아보고 모르는 개념들을 함께 정리해보려고 한다. https://lifeandit.tistory.com/60 고차 함수 그리고 중첩 함수 고차 함수(Higher Order Function; HOF) 고차 함수는 함수를 인자(argument)로 받거나 함수를 리턴하는 함수이다. 다른 함수(caller)의 인자로 전달되는 함수를 콜백 함수(callback function)라고 한다. 콜백 함수.. lifeandit.tistory.com 실행 컨텍스트는 동작 원리를 담고 있는 개념으로, 자바스크립트 엔진에서는 물리적 객체의 형태로 관리(나열 구조) 클로저(closure)의 개념 클로저는 자바스크립트 고유의 개념은 아니지만..

IT/JS 2021.08.11

고차 함수 그리고 중첩 함수

고차 함수(Higher Order Function; HOF) 고차 함수는 함수를 인자(argument)로 받거나 함수를 리턴하는 함수이다. 다른 함수(caller)의 인자로 전달되는 함수를 콜백 함수(callback function)라고 한다. 콜백 함수를 전달받은 함수는 이 콜백 함수를 필요한 시점에 호출하거나, 클로저를 생성하여 반환한다. 클로저 MDN의 정의는 다음과 같다. “A closure is the combination of a function and the lexical environment within which that function was declared.” 클로저는 함수와 그 함수가 선언됐을 때의 렉시컬 환경(Lexical environment)과의 조합이다. 여기서 함수는 내부 ..

IT/JS 2021.08.10
반응형