Tech Interview/Javascript10 #2. Hoisting var keyword 로 선언된 모든 변수 선언은호이스트된다. hoist 라는 단어의 사전적 정의는 끌어올리기 라는 뜻이다. 자바스크립트에서 끌어올려지는 것은 변수이다. 즉, 변수가 함수 내에서 정의되었을 경우, 선언이 함수의 최상위로, 함수 바깥에서 정의되었을 경우, 전역 컨텍스트의 최상위로 변경이 된다. 우선, 선언(Declaration)과 할당(Assignment)을 이해해야 한다. 끌어올려지는 것은 선언이다. 다른 언어의 경우엔, 변수 x 를 선언하지 않고 출력하려 한다면 오류를 발생할 것이다. 하지만 자바스크립트에서는 undefined라고 하고 넘어간다. var x = 100; 이 구문에서 var x;를 호이스트하기 때문이다. 선언문은 항시 자바스크립트 엔진 구동시 가장 최우선으로 해석하므로 호.. 2020. 2. 1. #1. Javascript Event Loop Javascript Engine Javascript Engine이란 Javascript로 작성한 코드를 해석하고 실행하는 인터프리터이다. 주로 웹 브라우저에서 이용되지만 최근에는 node.js라는 녀석이 등장하면서 server side에선 V8과 같은 Engine이 이용된다. 자바스크립트 엔진은 기본적으로 하나의 쓰레드에서 동작한다. 하나의 쓰레드를 가지고 있다는 것은 하나의 stack을 가지고 있다는 의미와 같고, 하나의 stack이 있다는 의미는 동시에 단 하나의 작업만을 할 수 있다는 의미이다. ※인터프리터 프로그래밍 언어의 소스 코드를 바로 실행하는 컴퓨터 프로그램 또는 환경을 말한다. -출처 : 위키백과 인터프리터 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 인터프리터(.. 2020. 1. 31. 이전 1 2 3 다음