자바스크립트 엔진( JavaScript engine )
자바스크립트 코드를 실행하는 프로그램 또는 인터프리터(해석기). 대체적으로 웹 브라우저에서 사용된다.
JS엔진은 다양한 종류가 있으며 각각 엔진은 특정 브라우저 또는 환경에 특화되어 있다. 대표적인 JS 엔진은 아래와 같다.
| V8( Chrome, Node.js ) | Hermes( React Native ) |
| Google에서 개발한 오픈소스 엔진이다. C++로 개발되었으며 빠른 실행 속도와 높은 성능을 갖추고 있다. 주로 Chrome 브라우저와 Node.js 런타임 환경에서 사용된다. |
Facebook에서 개발한 엔진이다. 모바일 환경에서의 빠른 시작 시간과 적은 메모리 사용량에 최적화하는 장점이 있다. React Native 애플리케이션에서 사용된다. |
자바스크립트는 Call Stack과 Memory Heap이라는 메모리 구조를 통해 데이터 및 코드 실행을 관리한다.
| 엔진의 주요 구성 요소 | |
| Memory Heap | Call Stack |
| 메모리 할당이 일어나는 곳 | 코드 실행에 따라 호출 스택이 쌓이는 곳 |
웹의 동작
자바스크립트 엔진(메모리힙, 콜스택)만으로 웹이 동작하지 않는다.
그 외적인 요소들의 동작도 런타임으로 이루어진다.
브라우저에서 제공하는 Web API들( DOM, Ajax, setTimeout, 이벤트루프 등 ) 그리고 이벤트 등과 함께 동작하면서 런타임이 이루어진다.

버튼 클릭 같은 이벤트, DOM 이벤트, http 요청, setTimeout 같은 비동기 함수는 Web API를 호출하며
Web API는 콜백 함수를 Callback Queue에 밀어 넣는다.
JavaScript engine & 작동 원리
자바스크립트 작동 원리
velog.io
https://fabric0de.tistory.com/23
JS 엔진의 구조와 작동원리 (JS 런타임 환경까지)
⚙️자바스크립트 엔진이란?JavaScript 엔진은 JavaScript 코드를 실행하는 소프트웨어 컴포넌트이다. 대표적인 예로 구글 크롬의 V8 엔진, 파이어폭스의 SpiderMonkey, 사파리의 JavaScriptCore (Nitro) 등이 있
fabric0de.tistory.com
'Programing Language > JavaScript' 카테고리의 다른 글
| js (0) | 2025.02.12 |
|---|---|
| 코딩하면서 js정리 01 (0) | 2025.02.05 |
| Js변수 선언 방식 var, let, const (1) | 2025.01.27 |
| new StompJs.Client( ) (1) | 2025.01.26 |
| 브라우저 렌더링 과정과 window.onload = () => { } , $(document).ready( ) (1) | 2025.01.21 |