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

dannychh님의 프로필 이미지

작성한 질문수

인터랙티브 웹 개발 제대로 시작하기

이벤트의 기본 동작

전역변수에 관해 질문드립니다

21.01.16 00:50 작성

·

223

0

전역변수 사용을 피하기 위해서는 코드를

(function() {})();

로 감싸야 한다고 하셨는데 그냥 블럭{}으로 코드를 감싸도 비슷하게 실행이 되는 것 같아서 두 방법 사이에 큰 차이가 있는지 궁금합니다. 만약 둘 중에 하나를 추천하신다면 어떤 방법이 더 좋은지 그리고 그 이유가 무엇인지 알려주시면 감사하겠습니다.

답변 2

1

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

2021. 01. 20. 14:23

키워드 var를 사용할 경우는 변수 scope(유효범위)가 함수가 되고,
키워드 let이나 const를 사용하면 블럭 {} 이 되는데요,
처음에 페이지가 로드되면 바로 실행이 되어야 하는 상황이라
함수 안에 넣고 함수를 바로 호출했다고 생각하시면 됩니다.
말씀대로 변수 유효범위 자체는 let/const를 쓰셨다면 { } 기준으로 생각하시면 됩니다^^

0

dannychh님의 프로필 이미지
dannychh
질문자

2021. 01. 20. 21:08

답변 감사합니다 :) 그러면 let/const만 사용하는 경우에는 블럭을 사용해도 무방한 건가요?

dannychh님의 프로필 이미지

작성한 질문수

질문하기