책을 읽고 개인적으로 remind 할 내용을 정리한 글입니다.
즉시 실행 함수 : 함수 정의와 동시에 호출되는 즉시 실행 함수로 단 한번 호출한다.
(function () {
let foo = 10;
}());
console.log(foo); // foo is not defined
네임스페이스 객체 : 전역 변수처럼 사용하고 싶은 변수를 프로퍼티로 추가하는 방법, 객체에 또 다른 네임스페이스 객체를 추가해서 계층적으로 구성할 수도 있음.
let MYAPP = {};
MYAPP.name = "Ryu";
console.log(MYAPP.name);
모듈 패턴 : 클래스를 모방해서 변수와 함수를 모아 즉시 실행 함수로 감싸 하나의 모듈로 만드는 방식, 전역 변수의 억제는 물론 캡슐화까지 구현 가능, 접근제한자는 사용 못함
let Counter = (function () {
let num = 0;
return {
increase(){
return num++;
},
}());