본문 바로가기
Java script

scope와 전역변수, 지역변수

by 헤이봄봄 2021. 12. 29.

 

 

  스코프(Scope)  

: 변수 접근 규칙에 따른 유효범위

 

 

 

 

안쪽 스코프에서 바깥쪽 스코프로 접근할수 있지만 반대는 불가능

let username = 'parkhoho';
if (username) {
  let message = `Hello, ${username}!`; 
  console.log(message); // "Hello, parkhoho!" 바깥쪽 스코프에 접근가능
}

console.log(message); // ReferenceError 안쪽 스코프에 접근 불가능

 

 

가장 바깥쪽의 스코프는 전역스코프 global scope

전역이 아닌 스코프는 지역스코프 local scope

전역스코프에서 선언한 변수는 전역변수

지역스코프에서 선언한 변수는 지역변수

지역변수는 전역변수보다 더 높은 우선순위를 가짐

 

 

 

스코프의 종류

블록 스코프 : 중괄호로 둘러싼 범위(block scope)

함수스코프 : 함수로 둘러싼 범위(function scope) / 화살표함수는 블록 스코프에 적용됨

 

 

var키워드는 블록스코프를 무시,  함수 스코프와, 화살표함수의 블록스코프는 무시하지X

var 보다는 let 으로 변수 선언을 하는 것을 권장!

댓글