728x90
반응형
IIFE란 정의 되자마자 즉시 실행되는 자바스크립트 함수를 말한다.
선언 형식은 괄호 안에 익명함수를 작성한다.
이렇게 선언한 함수는 전역 스코프에 불필요한 변수를 추가하여 오염하는 것을 방지할 수 있고 다른 변수들이 접근하는 것을 막을 수 있다.
선언부 자바스크립트 엔진은 맨 마지막의 ()를 통해 해당 함수를 즉시 해석하여 실행한다.
예시 소스(외부에서 내부의 변수에 접근하지 못해 에러 발생)
(function () {
// 외부로부터 접근이 불가능한 변수
var lang = 'js';
})();
// 오류발생 ReferenceError: lang is not defined
// 내부의 lang을 외부에서 접근할 수 없기 때문에
// console.log(lang);
즉시 실행 함수를 변수에 할당하면 함수가 실행된 결과만을 저장한다.
var r = (function () {
// 외부로부터 접근이 불가능한 변수
var lang = 'js';
return lang;
})();
console.log(r);
728x90
반응형
'Javascript > Javascript' 카테고리의 다른 글
[Javascript] Class, Class Extends (0) | 2020.09.23 |
---|---|
[Javascript] Arrow Function(화살표 함수) (0) | 2020.09.22 |
[Javascript] String 문자 검사 (startsWith, includes, endsWith) (0) | 2020.09.21 |
[Javascript] Template String (0) | 2020.09.21 |
[Javascript] some (0) | 2020.09.21 |