Scope란?

이재진·2020년 9월 15일
0

Javascript

목록 보기
1/3
post-thumbnail

Scope란, 작성하는 코드의 접근 범위를 결정하는 개념으로 변수 접근 규칙에 따른 유효 범위를 나타냅니다.

JavaScript는 기본적으로, 함수가 선언되는(lexical) 동시에 자신만의 Scope를 가집니다.

변수 접근 규칙에 따른 유효범위란 변수와 그 값이 어디서부터 어디까지 유효한지를 판단하는 범위

Scope Chain

Global Scope - 어떤 함수로도 둘러쌓여있지 않은 가장 최상위 Scope, 전역스코프

안쪽 local Scope에서 바깥 변수/함수를 접근하는 것은 가능하나 바깥쪽 Scope에서 안쪽 변수/함수를 접근하는 것은 불가능하다.

스코프는 계층 구조.

하위스코프에서 상위스코프 접근 허용이 된다.

찾을 때 까지 타고 올라간다.

체인 : 한단계 한단계 올라가는 현상

상위스코프에선 하위 스코프를 들여다 보지 않는다.

global scope 에서 선언한 변수 : 전역변수

let name = "Reo";

function showName() {
 name = "Jaejin";  
 console.log(name); 
} 

console.log(name); //"Reo"
showName(); //"Jaejin"
console.log(name); //"Jaejin"

선언(let)이 없기 때문에, 바깥 scope에 있는 name이라는 변수를 가져옵니다

profile
개발블로그

0개의 댓글