-
스코프(sope)
: 변수 또는 함수의 유효범위
종류
- 지역변수(local variable) : 블록안에서 선언된 변수 (해당 블록안에서만 읽힘)
- 전역변수(global variable) : 블록밖에서 선언된 변수 (어디서든 읽힘)
※ 실무에서 로컬스코프가 어떻게 돼? 라고 물어보면 지역변수가 어떻게 돼? 라는 말
전역변수가 필요한 이유
- 특정값을 여러개의 서로다른 함수들이 공유를 해야될 때
호이스팅(hoisting)
- 블록안에서 선언된 지역변수값이 블록 바깥으로 강제로 끌어올라가져서 전역화되는 현상
- 대표적으로 일반함수 블록이 아닌 조건문, 반복문 안에 있는 지역변수는 호이스팅이 발생
_전역변수와 지역변수의 기본형
/* 기본형 */var 변수명; /*전역변수*/function 함수명() {var 변수명; /*지역변수*/}1. 지역변수
- 자바스크립트 함수 안에 선언된 변수는 그 함수에 대해서 지역(LOCAL) 이 된다.
- 지역변수는 지역범위(local scope)를 가진다.
- 그들은 그 함수안에서만 접근할 수 있다.
함수안에 변수는 오로지 함수안에서만 사용된다. (즉 함수가 종료될 때 변수는 사라진다는 의미)
함수밖에 같은 이름을 가진 변수에 전혀 영향을 주지 않는다.
2. 전역변수
- 함수 바깥에 선언된 변수는 전역이 된다.
- 전역변수는 전역 범위(global scope)를 가진다
: 웹페이지의 모든 스크립트와 함수가 그것에 접근할 수 있다.
3. 호이스팅(hoisting)
- 호이스팅이란 변수를 선언하고 초기화했을 때 선언 부분이 최상단으로 끌어올려지는 현상
(= 변수가 어디에 선언되어있든 상관없이 항상 맨 위에 선언되어지게 끌어올려주는 것)
블로그참고
https://blog.naver.com/rigun300/221699175289
반응형'코딩스터디 > Javascript' 카테고리의 다른 글
자바스크립트 템플릿 리터럴 (0) 2021.05.19 DOM과 queryselector, querySelectorAll (0) 2021.05.18 반복문 - for, forEach, map, for of (0) 2021.05.14 자바스크립트 조건문 (0) 2021.05.14 자바스크립트 함수 - 매개변수, 인수, 리턴 (0) 2021.05.14 댓글