- JavaScript
- 불변성
- 스코프
- 실행컨텍스트
- CI / CD
- Ajax, Axios, fetch
- XHR - Xml Http Request
- 호출 스케줄링
- 이벤트 흐름,이벤트 종류, 이벤트 위임
- Closure
- Map / Set
- documentFragment
스코프란 무엇인가
- “범위” 라는 뜻을 가지고 있다.
- 스코프란 “변수에 접근할 수 있는 범위”이다
스코프는 어떻게 생성이 되는가?
{
var a = 1 // 전역스코프 1
// 중괄호
{ }
// 함수
function b(){}
// 객체
var c = {}
// 조건문
if(){... 지역스코프}
// 반복문
for(){... 지역스코프}
}
- 스코프를 생성하기 위해서는 중괄호를 사용한다.
스코프의 종류에는 어떤것이 있는가?
// 전역스코프
var foo = 1;
// 지역스코프
function outer() {
}
전역 스코프 (Global Scope)
- 전역 스코프(Global Scope)는 전역에 선언되어 있어 어느 곳에서든지 해당 변수에 접근할 수 있는 스코프
지역 스코프 (Local Scope)
- 지역 스코프(Local Scope)는 해당 지역에서만 접근할 수 있는 스코프
스코프의 특징
// 전역
var x = 'global';
// 지역
function foo () {
var y = "local"
function bar (){
console.log(y)
console.log(x)
}
bar()
}
foo(); // ??
console.log(y) // ??
스코프 체이닝
- 자바스크립트에서는 하위 스코프에서 상위 스코프의 식별자(ex: 변수)를 참조하여 사용할 수 있다.
- 참조 대상을 찾아내기 위한 규칙으로 하위 스코프가 상위 스코프를 탐색하여 식별자를 찾아 나아가는 과정을
스코프 체이닝 이라고 한다.
함수 내부에서만 참조 가능