특정 범위에서 다른 범위에 있는 변수에 접근할 수 있는 범위
전역 스코프, 지역 스코프로 나뉜다 (전역 변수, 지역변수 느낌)
함수 스코프와 블록 스코프로 나뉜다.함수 스코프는 함수에서 선언한 변수는 해당 함수 내에서만 접근이 가능하다.함수 스코프는 함수내에서 어디든 사용이가능하고 함수가 끝나기 전까지 메모리상에서 제거되지 않는다.블록 스코프는 해당 블록 ({})에서만 사용이 가능하고 블록이 끝나면 메모리상에서 제거된다.var global = 10; //전역스코프
function func1(){
let a = 1; //지역 스코프
}
if(a!==global){
var global2 = "전역변수";
}
console.log(a) //error!
console.log(global) // 10
console.log(global2) // 전역변수
function func2(){
for(var i = 0 ; i < 10; i++){
...
}
console.log(i) // 10
}
function func3(){
for(let i = 0 ; i < 10; i++){
...
}
console.log(i) // undefined
}