> 웹 프론트엔드 > JS 튜토리얼 > JavaScript의 클로저란 무엇입니까? (inute 가이드)

JavaScript의 클로저란 무엇입니까? (inute 가이드)

DDD
풀어 주다: 2024-11-22 03:42:24
원래의
364명이 탐색했습니다.

What Are Closures in JavaScript? (inute Guide)

JavaScript의 클로저란 무엇입니까?

클로저는 까다로워 보이지만 놀라울 정도로 강력한 JavaScript의 기본 개념입니다. 이를 이해하기 위한 빠른 가이드는 다음과 같습니다.

클로저란 무엇입니까?

함수가 어휘 범위에서 변수를 "기억"하면 해당 범위가 종료된 후에도 클로저가 생성됩니다.

예:

function outerFunction(outerVariable) {  
  return function innerFunction(innerVariable) {  
    console.log(`Outer: ${outerVariable}, Inner: ${innerVariable}`);  
  };  
}  

const myClosure = outerFunction("Hello");  
myClosure("World");  
// Output: Outer: Hello, Inner: World
로그인 후 복사

여기서 innerFunction은 externalFunction 실행이 완료된 후에도 externalFunction 범위에서 externalVariable에 액세스할 수 있습니다.

클로저가 왜 유용한가요?

데이터 개인 정보 보호: 개인 변수를 만듭니다.

function counter() {  
  let count = 0;  
  return function () {  
    count++;  
    return count;  
  };  
}  
const myCounter = counter();  
console.log(myCounter()); // 1
console.log(myCounter()); // 2  
로그인 후 복사

부분 적용: 함수 인수를 미리 채웁니다.

function multiplyBy(multiplier) {  
  return function (number) {  
    return number * multiplier;  
  };  
}  
const double = multiplyBy(2);  
console.log(double(5)); // 10  
로그인 후 복사

결론

클로저를 사용하면 함수가 환경을 기억할 수 있습니다. JavaScript의 개인 변수, 부분 적용 및 기타 여러 고급 패턴에 적합합니다.

위 내용은 JavaScript의 클로저란 무엇입니까? (inute 가이드)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿