Scope

sang hyeok Lee·2022년 4월 2일
0

Scope

scope는 자바스크립트의 유효범위를 말한다.
그 유효 범위는 전역, 지역으로 나눌 수 있다.

const a = 1

상위 a가 최상위애서 호출이 되었다고 해보자. 그러면 이 a라는 상수는 전역 어디에서나 a라는 상수를 사용할 수 있다. 함수 안이든 다른 함수에서든 사용을 할 수 있다.

function a () {
	const b = 1
} 

a라는 함수 안에 b라는 상수가 선언이 되어져 있다. 그러면 이 b는 a라는 함수 블럭 안에서 선언이 되어죠 있기 때문에 a라는 함수 지역에서만 시용이 되어진다.

const a = 1

function b () {
	const c = 3
    console.log( a + c )
}

console.log(a + c) // error
b() // 4

a는 전역스코프에서 선언이 되어져 있다 그리고 b라는 함수 안에 c 라는 상수가 선언이 되어져 있고 a+c 를 콘솔로 출력하고 있다. 그리고 전역스코프에서 a+c를 출력하고 있다.

함수 b를 호출하면 4라는 값이 잘 나오지만 console.log(a+c)는 오류가 나타나고 있다. 이는 스코프개념 때문에 일어난다. c는 b라는 함수 범위 안에서 선언이 되어 있기 때문에 함수 블럭 안에서만 사용이 가능하다. a는 전역스코프에서 선언이 되었기 때문에 어느 곳에서든 사용이 가능하다.

그래서 a는 b라는 함수블럭 안에서도 사용이 가능하지만 c는 지역스코프에서 선언이 되어져 있기 때문에 전역스코프에서는 사용이 불가능하다.

그래서 b를 호출 했을 때는 값이 잘 나오지만 전역에서의 a+c는 에러가 난다

profile
개발자 되기

0개의 댓글