일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 무한 스크롤
- 호이스팅
- autosize
- 인터섹션
- Cypress
- TS
- 이분 검색
- Jest
- 공변성
- 태그된 유니온
- dfs
- 결정 알고리즘
- useAppDispatch
- SSR
- 리터럴 타입
- Promise
- async/await
- CI/CD
- webpack
- React
- ESlint
- 반공변성
- app router
- 투포인터
- tailwind
- CORS
- recoil
- RTK Query
- 타입 좁히기
- map
- Today
- Total
목록호이스팅 (2)
짧은코딩
좋은 개발을 하려면 호이스팅을 하지 않는 것이 가장 좋다! 분석 코드 const x = "x"; console.log(z); var y = "hehe"; const z = () => {}; function c() { const y = "y"; console.log("c"); function b() { const z = "z"; console.log("b"); c(); } } function a() { const x = "x"; console.log("a"); } a(); c(); 이런 코드가 있을 때, 호이스팅 상황에서 어떻게 되는지 분석해보겠다. var const x = "x"; console.log(z); var y = "hehe"; 이런 코드가 호이스팅 되면 var y; const x = "x"; ..
변수 호이스팅 모든 프로래밍 언어를 배울 때, 가장 먼저 배우는 것 중에 하나가 변수 선언일 것이다. JavaScript는 변수 선언이 좀 특이하다. 변수 선언이 소스코드가 한 줄씩 순차적으로 실행되는 시점, 즉 런타임이 아닌 그 전 단계에서 먼저 실행된다. console.log(score); //undefined var score; 이 코드에서 console.log의 결과는 undefined가 나오게된다. 보통의 프로그래밍 언어라면 에러가 났을거지만, JS 엔진은 런타임 전에 소스코드의 평가 과정을 거치면서 런타임 준비를 한다. JS 엔진은 모든 선언문(변수, 함수 등)을 찾아 런타임 전에 먼저 실행한다. 변수 선언이 소스코드의 어디에 위치하든 어디서든지 변수를 참조할 수 있다! => 이렇게 변수 선언..