일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 토익
- SQL 고득점 Kit
- 2주 프로젝트
- 백준
- 리액트
- codestates
- 회고
- 정재남
- 알고리즘
- LeetCode
- programmers
- til
- 코어 자바스크립트
- 타입스크립트
- 파이썬
- 코드스테이츠
- 리트코드
- 제로초
- 자바스크립트
- 타임어택
- 렛츠기릿 자바스크립트
- 손에 익히며 배우는 네트워크 첫걸음
- 타입스크립트 올인원
- Async
- 리덕스
- 프로그래머스
- python
- js
- 4주 프로젝트
- javascript
- Today
- Total
목록호이스팅 (3)
Jerry
let과 const 호이스팅 + TDZ(Temporal Dead Zone) let과 const로 선언한 변수도 호이스팅 대상이다. 호이스팅 시 let은 undefined로 변수 초기화 하지 않음 이 상태에서 선언한 let 키워드 호출 ⇒ 예외 발생 (에러) | 에러 발생 이유: 일시적 사각지대(TDZ: Temporal Dead Zone) 변수 스코프의 맨 위에서 변수의 초기화 완료 시점까지의 변수는 "일시적 사각지대"(Temporal Dead Zone, TDZ)에 들어간 변수라고 표현 TDZ인 이유는 사각지대가 코드의 작성 순서(위치)가 아니라 코드의 실행 순서에 의해 형성되기 때문 // TDZ Example function do_something() { console.log(bar); // undefi..
var 키워드 Scope of var : var 키워드의 범위 범위는 기본적으로 변수를 사용할 수 있는 위치 의미 var 선언은 전역 범위 혹은 함수 범위로 지정 var 변수가 함수 외부 선언 => 범위는 전역 (전체 윈도우 상) var 변수가 함수 내부 선언 => 범위는 함수 블록 내부 var hello = 'a'; function person() { var world = 'b'; } console.log(world); // world is not defined console.log(hello); // hello var의 호이스팅 호이스팅이란 변수와 함수 선언이 맨 위로 이동되는 자바스크립트 매커니즘 = 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것 console.log (gre..
var 호이스팅 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것 var 로 선언한 변수의 경우 호이스팅 시 undefined로 변수 초기화 var 키워드로 선언된 변수는 선언 단계와 초기화 단계가 한번에 이뤄진다 let과 const로 선언한 변수의 경우 호이스팅 시 초기화하지 않음 변수의 선언과 초기화를 분리한 후, 선언만 코드의 최상단으로 옮기는 것 변수 정의 코드보다 사용 코드가 앞서 등장할 수 있음 함수 선언도 위와 동일 // #1 Case function catName(name) { console.log("제 고양이의 이름은 " + name + "입니다"); } catName("호랑이"); /* 결과: "제 고양이의 이름은 호랑이입니다" */ // #2 Case catName..