How JavaScript works: an overview of the engine, the runtime, and the call stack
JavaScript가 점점 더 대중화됨에 따라 팀은 프론트 엔드, 백엔드, 하이브리드앱, 임베디드 장치 등 스택의 여러 수준에서 JavaScript가 지원을 활용하고 있다.
거의 모든 사람들이 이미 V8 엔진에 대한 개념을 들어 보았고 대부분의 사람들은 JavaScript가 단일 스레드이거나 콜백 큐를 사용하고 있다는 것을 알고 있다.
숙력된 JavaScript 개발자라면 매일 사용하는 JavaScript 런타임이 실제로 어떻게 동작하는지에 대한 새로운 통찰력을 얻을 수 있기를 바란다.
JavaScript 엔진의 인기있는 예는 Google의 V8 엔진이다. V8 엔진은 예를 들어 Chrome 및 Node.js 내부에서 사용된다.
엔진은 두 가지 주요 구성 요소로 구성된다.
브라우저에는 거의 모든 JavaScript 개발자가 사용한 API가 있다(ex: setTimeout). 그러나 이러한 API는 엔진에서 제공되지 않는다.
따라서 엔진이 있지만 실제로는 훨씬 더 많다. DOM, AJAX, setTimeout 등과 같이 브라우저에서 제공하는 Web API라는 것들이 있다.