인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

gytjq456님의 프로필 이미지
gytjq456

작성한 질문수

애플 웹사이트 인터랙션 클론!

load함수 관련 궁금합니다.

작성

·

148

0

(() => {

})()

현재 코드를 즉시 실행 함수 안에서 작성하고 있는데 

즉시 실행 함수가 없이 바로 써도 문제없이 작동 하는거 같은데

왜 저 안에서 쓰는지 궁금합니다.

답변 1

0

1분코딩님의 프로필 이미지
1분코딩
지식공유자

자바스크립트의 전역변수는, 어디서나 접근할 수 있기 때문에 변수명 충돌 등의 문제를 가지고 있어서 가급적이면 쓰지 말도록 하는 경향이 있는데요, 함수(블럭) 내부에 선언함으로서 지역변수({ } 내부에서만 접근할 수 있는)로 만들어준 것이랍니다.

<script type="module" ... > 이런 식으로 자바스크립트 module을 사용할 경우는, module 자체적으로 변수의 유효 범위가 만들어지기 때문에 즉시 실행함수를 사용하지 않아도 전역변수가 만들어지지 않지만, 우리 예제는 module은 사용하고 있지 않기 때문에 즉시 실행함수를 사용해서 전역변수 사용을 막아주었습니다.

gytjq456님의 프로필 이미지
gytjq456

작성한 질문수

질문하기