hoisting(3)
-
호이스팅
이전에 실행컨텍스트에 대해 다루었었다. https://muyeon95.tistory.com/317 실행 컨텍스트 실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체이다. 이는 자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념이다. 자바스크립트는 어떤 실행 컨텍스트 muyeon95.tistory.com 실행 컨텍스트 요약 자바스크립트 코드를 실행하는데 필요한 환경 정보, 즉 변수 객체, 스코프 체인, this 에 관한 내용 등을 담고 있는 객체이다. 실행 컨텍스트는 크게 전역 컨텍스트와 함수 컨텍스트 2가지로 나뉘며, 자바스크립트 코드 실행이 시작되면 무조건 콜 스택에 전역 컨텍스트가 먼저 쌓이고, 그 위로 함수를 호출할 때마다 함수 컨텍스트가 생성된다. 각 컨텍스트가 생성..
2023.12.31 -
실행 컨텍스트
실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체이다. 이는 자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념이다. 자바스크립트는 어떤 실행 컨텍스트가 활성화되는 시점에 선언된 변수를 위로 끌어올리고(호이스팅), 외부 환경 정보를 구성하고 this 값을 설정하는 등의 동작을 수행하는데, 이로 인해 다른 언어에서는 없는 특이한 현상이 발생한다. 클로저를 지원하는 대부분의 언어에서 이와 유사하거나 동일한 개념이 적용되어 있다. 실행 컨텍스트란? 실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체이다. 동일한 환경에 있는 코드들을 실행할 때 필요한 환경 정보들을 모아 컨텍스트를 구성하고 이를 콜 스택에 쌓아올렸다가, 가장 위에 쌓여있는 컨텍스트와 관련 있는 코드..
2023.12.26 -
Javascript 호이스팅(Hoist)
- 뭔가를 끌어올린다 라고 생각하면 됩니다. - JS 에서 호이스팅은 코드가 실행되기 전에 변수, 함수 선언 이 지역범위(로컬 범위) 의 맨 위로 끌어 올려지는 경우입니다. 1. var - 많이 이상해보이지만 호이스팅 때문에 오류가 나지 않습니다. - JS 인터프리터는 변수 생성과 할당값을 분할합니다. 선언부분은 코드 실행 전 범위의 맨 위로 호이스팅 초기 값은 undefined 가 할당됩니다. console.log(hoisting); var hoisting = "hi hoisting"; console.log(hoisting); /* === 실행 결과 === undefined hi hoisting */ 2. 함수 호이스팅 - 함수도 바로출력 hoistingFunc(); function hoistingFu..
2023.05.16