클로저란 무엇이며 왜 사용해야 하나요?

클로저는 함수가 다른 함수 범위에 있는 변수에 액세스할 수 있음을 의미합니다. 일반적인 생성 방법은 함수 내부에 또 다른 함수를 정의하는 것입니다. 내부 함수는 외부 변수를 참조할 수 있습니다. 외부 변수는 가비지 수집 메커니즘에 의해 재활용되지 않습니다.

클로저의 원리는 스코프 체인이므로 클로저가 접근하는 상위 스코프의 변수는 객체이고 그 값은 작업이 완료된 후 마지막 값이라는 점에 유의하세요.

장점: 전역 변수 오염을 방지합니다. 단점: 메모리 누수가 발생하기 쉽습니다(변수가 메모리에 저장됨).

클로저 사용 시나리오: 구성 요소 캡슐화, 함수 참조 유형, 개인 데이터 정의

기능:

JavaScript를 사용하면 현재 함수 외부에서 정의를 사용할 수 있습니다. 변수

b. 외부 함수가 반환되더라도 현재 함수는 여전히 외부 함수에 정의된 변수를 참조할 수 있습니다.

c. 클로저는 외부 변수의 값을 업데이트할 수 있습니다.

d. 클로저를 사용하여 비공개 메소드를 시뮬레이션하십시오.

클로저는 함수의 변수를 메모리에 저장하여 많은 메모리를 소비하므로 클로저를 남용할 수 없습니다. 웹페이지 충돌이 발생합니다.

예: