728x90
Javascript 클로저란?
(바로 하단의 블로그를 참고하여 정의해보면)
하단의 일반적으로 어떤 함수가 자신의 내부가 아닌 외부에서 선언된 변수에 접근하는 것이다.
이렇게 서술하면 무슨말인지 잘 모르겠다면, 더 풀어서 설명하면 정의한 함수를 리턴하고 실제 클로저의 사용은 스코프
정의한 함수를 리턴하고 사용은 밖에서 사용한다.
라고 설명하면 또 무슨소린가 와닿지 않을경우 아래와 같이 코딩을 해보았다.
function getfn() {
const text = 'closure!!!';
return function() {
return text;
};
}
const closure = getfn();
console.log(closure());
// @결과 : closure!!!
위와 같이 getfn안에 function 함수를 return하고 반환된 변수를 참조하고 있다. 이것을 클로저라고 한다.
클로저를 사용하게되면 크게 아래의 3가지의 장점이 있다.
1) 캡슐화
2) 모듈화 = 독립적인 사용
3) 데이터 보존
세가지의 장점은 다음 글에서 포스팅하겠습니다.
728x90
'Frontend > Javascript' 카테고리의 다른 글
[JS] Optional Chaining 연산자 사용 방법 (0) | 2023.05.13 |
---|---|
[JS] 병합 연산자 (nullish coalescing operator) 사용 방법 (0) | 2023.05.13 |
[JS] Javascript Reduce로 배열의 합, 중복 갯수 구하기 (0) | 2023.02.11 |
[JS] Array.from 배열 변환 및 연산, 1~N까지 채우기 (0) | 2023.02.10 |
[JS] 이벤트 버블링과 이벤트 캡처란 ? (0) | 2023.02.06 |