클로저는 동일한 범위 수준(어휘 범위)에서 선언된 다른 모든 변수 및 함수
에 액세스할 수 있도록 하는 기능입니다.JavaScript의 클로저는 비공개 변수를 생성하고 기능을 캡슐화할 수 있도록 하여 Java의 비공개 메소드와 유사한 목적을 제공합니다.
function outerFunction() { let outerVariable = 'I am from outer scope'; function innerFunction() { console.log(outerVariable); // Accessing outerVariable from the outer scope } return innerFunction; // Return the inner function } const closureFunction = outerFunction(); // Call outerFunction, which returns innerFunction closureFunction(); // Outputs: I am from outer scope
function handleCount() { let count = 0; return { increment: () => { count++; return count; }, decrement: () => { count--; return count; }, getCount: () => { return count; }, }; } const counter = handleCount(); console.log(counter.increment()); // Outputs: 1 console.log(counter.increment()); // Outputs: 2 console.log(counter.getCount()); // Outputs: 2 console.log(counter.decrement()); // Outputs: 1 console.log(counter.getCount()); // Outputs: 1
위 내용은 JavaScript 클로저 마스터하기: 범위, 캡슐화 및 성능 이해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!