TIL#28-2

DuBu·2023년 7월 17일
0

일본IT JAVA 연수과정

목록 보기
45/61
post-thumbnail

Closures

클로저(Closure)는 JavaScript에서 매우 중요한 개념 중 하나입니다. 클로저는 함수와 함수가 선언된 어휘적 환경(Lexical Environment)의 조합입니다.

  • 반환된 함수의 life-cycle이 종료될 때까지 호출된 함수의 life-cycle이 유지되는 것.
  • 내부 함수가 외부 변수를 사용할 수 있다. 내부 함수가 종료 될 때까지

간단히 말하면, 함수 내부에서 선언한 변수를 함수 외부에서 접근할 수 있는 메커니즘입니다. 함수 내부에서 선언한 변수가 함수가 종료된 이후에도 유지되며, 함수 외부에서도 사용할 수 있게 됩니다.

이러한 동작 방식은 JavaScript에서 매우 강력하고 유용한 패턴을 구현하는 데에 사용될 수 있습니다. 예를 들어, 함수를 반환하는 함수를 만들거나, 비동기 작업에서 상태를 유지하는 등의 상황에서 클로저를 사용할 수 있습니다.

클로저는 주로 함수 내부에서 선언한 변수를 외부로 노출시키지 않고, 변수를 안전하게 보호하고 유지하기 위해 사용됩니다. 이를 통해 변수의 은닉화와 정보 은닉을 달성할 수 있습니다.

Callback Function

  • 매개변수로 함수를 전달하고, 전달된 매개변수가 특정 시점에 호출되는 것

콜백 함수는 비동기적인 작업을 다룰 때 주로 사용됩니다. 예를 들어, 타이머 함수(setTimeout, setInterval)이나 AJAX 요청, 이벤트 핸들러 등에서 콜백 함수를 활용할 수 있습니다. 이러한 경우에는 작업이 완료되었을 때 실행되어야 할 코드를 콜백 함수로 전달하여 사용합니다.

0개의 댓글