일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 아마존해킹
- 이진검색
- 컴퓨터과학
- HDD와 SSD의 차이
- 프로세서 속도와 심장 박동수
- ES차이
- 숫자구하기
- 네트워크해킹
- es6
- ES5
- 아키네이처
- 공개API
- API요청
- 줌서비스
- 퀵정렬
- 한국디도스
- 트위터해킹
- ECMA설명
- 데이터분석
- CS스터디
- 브라우저 작동원리
- 비전공자개발정리
- 주식스팸
- 알고리즘 문제 풀이
- 빗썸데이터
- es3
- 자바스크립트표준
- es6문법
- 1일 1로그 100일 완성 IT지식
- 컴퓨터 논리와 구조
- Today
- Total
개발일지
호이스팅이란??? 간단 요약 본문
JavaScript에서 호이스팅(hoisting)이란, 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미합니다. var로 선언한 변수의 경우 호이스팅 시 undefined로 변수를 초기화합니다. 반면 let과 const로 선언한 변수의 경우 호이스팅 시 변수를 초기화하지 않습니다.
호이스팅을 설명할 땐 주로 "변수의 선언과 초기화를 분리한 후, 선언만 코드의 최상단으로 옮기는 것"으로 말하곤 합니다. 따라서 변수를 정의하는 코드보다 사용하는 코드가 앞서 등장할 수 있습니다. 다만 선언과 초기화를 함께 수행하는 경우, 선언 코드까지 실행해야 변수가 초기화된 상태가 됨을 주의하세요
TIP 호이스팅 사용 시 주의
- 코드의 가독성과 유지보수를 위해 호이스팅이 일어나지 않도록 한다.
ㅁ 호이스팅을 제대로 모르더라도 함수와 변수를 가급적 코드 상단부에서 선언하면,
호이스팅으로 인한 스코프 꼬임 현상은 방지할 수 있다.
ㅁ let/const를 사용한다.
- var를 쓰면 혼란스럽고 쓸모없는 코드가 생길 수 있다. 그럼 왜 var와 호이스팅을 이해해야 할까?
ㅁ ES6를 어디에서든 쓸 수 있으려면 아직 시간이 더 필요하므로 ES5로 트랜스컴파일을 해야한다.
ㅁ 따라서 아직은 var가 어떻게 동작하는지 이해하고 있어야 한다.
https://gmlwjd9405.github.io/2019/04/22/javascript-hoisting.html
[JavaScript] 호이스팅(Hoisting)이란 - Heee's Development Blog
Step by step goes a long way.
gmlwjd9405.github.io
https://developer.mozilla.org/ko/docs/Glossary/Hoisting
https://velog.io/@wnsgh156a/%ED%98%B8%EC%9D%B4%EC%8A%A4%ED%8C%85Hoisting%EC%9D%B4%EB%9E%80
https://hanamon.kr/javascript-%ED%98%B8%EC%9D%B4%EC%8A%A4%ED%8C%85%EC%9D%B4%EB%9E%80-hoisting/
'면접준비' 카테고리의 다른 글
JS의 this란??? (0) | 2022.06.06 |
---|---|
GET과 POST의 차이 간단하게 설명해보자! (0) | 2022.06.03 |
CSS의 margin, paddilng, position 간단 설명 (0) | 2022.06.02 |
클로저란? 원리와 사용이유 (0) | 2022.06.01 |
브라우저 렌더링 원리 (0) | 2022.05.30 |