Javascript 클로저(Closure) 란 무엇일까?

리액트만패는젊은이·2024년 9월 25일

Javascript Cs

목록 보기
2/6

클로저(Closure):

  • 클로저는 함수가 생성될 당시의 외부 변수를 기억하고 접근할 수 있는 기능입니다. 클로저는 상태를 유지하거나 비공개 데이터를 보호하는데 사용됩니다.

예시)

function outer() {
  let counter = 0;
  return function inner() {
    return ++counter;
  };
}
const increment = outer();
console.log(increment()); // 1

이 코드에서 inner 함수는 counter를 계속 참조할 수 있어, 메모리 누수 위험이 있습니다.

메모리 관리에 미치는 영향:

  • 클로저는 참조된 변수들이 메모리에서 해제되지 않고 유지됩니다. 이를 통해 유용한 기능을 제공하지만, 필요 없는 클로저가 메모리에서 해제되지 않으면 메모리 누수가 발생할 수 있습니다. 불필요한 클로저 사용을 줄이거나, 이벤트 핸들러를 제거하는 등의 방식으로 메모리 누수를 방지할 수 있습니다.
profile
front-end-developer

0개의 댓글