가희의자기개발블로그
Scope 본문
반응형
Scope란?
자바스크립트에서 스코프란 어떤 변수들에 접근할 수 있는지를 정의한다. 스코프에는 두 가지 종류가 있는데 바로 전역 스코프와 지역 스코프이다.
전역 스코프
전역 스코프는 변수가 함수 바깥이나 {} 바깥에서 선언되었다면, 전역 스코프에 해당한다.
const hello = 'Hello Marcus'
function marcusHello () {
console.log(hello)
}
console.log(hello) // 'Hello Marcus!'
sayHello() // 'Hello Marcus!'
비록 위와같이 전역 스코프를 이용하여 변수를 선언할 수 있지만 그렇지 않는게 좋습니다.
왜냐하면, 두 개 이상의 변수의 이름이 충돌하는 경우가 생길 수도 있기 때문이죠
실제로 초기 프로그래밍 언어는 이 대응표를 프로그램 전체에서 하나로 관리했는데, 여기에는 이름 충돌의 문제가 있었습니다.
만약 var를 이용하여 변수를 선언했다면 두 번째 변수가 첫번째 변수를 덮어쓰게 된다. 그러므로 var은 되도록 사용하지 않도록 해야한다.
지역 스코프
지역 스코프는 코드에서 특정 부분에서만 사용이 가능한 변수입니다.
자바스크립트에서는 크게 두 가지의 지역 스코프가 존재합니다. 함수 스코프와 지역 스코프
먼저 함수 스코프를 소개해드리겠습니다.
함수 스코프
함수 내부에서 변수를 선언한다면, 그 변수는 선언한 함수 내부에서만 사용이 가능하다.
블록 스코프
블록 스코프란 중괄호{} 내부에서 const 또는 let으로 변수를 선언하면 그 변수들은 중괄호 블록 내부에서만 사용이 가능하다.
반응형
'프론트엔드 > JavaScript+JQuery' 카테고리의 다른 글
속성 핵심내용 (0) | 2020.07.14 |
---|---|
속성 소개 (0) | 2020.07.14 |
Hoisting (0) | 2020.07.09 |
var 과 let 그리고 const (0) | 2020.07.09 |
스타일 핵심 내용 (0) | 2020.07.09 |
Comments