Immediately Invoked Function Expression
정의되자마자 즉시 실행되는 함수를 말한다.
(async () => {
const response = await fetch('https://api.com');
const json = await response.json();
console.log(json);
})();
사용 이유는 다음과 같다.
필요없는 전역 변수의 생성을 줄일 수 있다.
즉시 실행함수는 선언하면 내부 변수가 전역으로 저장되지 않기 때문에 전역 스코프의 오염을 줄일 수 있다.
private
한 변수를 만들 수 있다.
외부에서 접근할 수 없는 자체적인 스코프를 가지게 된다.
이는 클로저의 사용 목적과도 비슷하며 내부 변수를 외부로부터 private
하게 보호할 수 있다는 장점이 있다.