자바스크립트 엔진

1. 자바스크립트 엔진?

  • JavaScript 코드를 실행하는 소프트웨어 구성 요소
  • 최초의 JavaScript 엔진은 단순한 인터프리터였지만 관련된 최신 엔진은 모두 JIT(Just-In-Time) 컴파일을 사용하여 성능을 향상시킵니다.

2. 컴퓨터는 소스 코드를 어떻게 이해합니까?

  • 컴퓨터 프로세서는 0과 1만 이해할 수 있기 때문에 우리가 작성한 소스 코드를 기계 코드로 변환해야 하며 이 변환 과정은 컴파일과 인터프레커를 통해 수행됩니다.

3. 인터프리터 vs 컴파일러

3-1 Interpreter : 각 실행을 한 줄씩 번역 및 분석


3-2.컴파일러: 사람의 코드를 즉시 기계어로 변환


4. JIT 컴파일(Just In Time)

  • 원래 JavaScript 엔진 사용 인터프리터 -> 현재: JIT 컴파일

-> 인터프리터 언어는 다른 컴파일 언어에 비해 해석 및 실행 속도가 매우 느리지만 현재 웹에서 많은 기능을 수행하므로 더 나은 성능을 위해 JIT 컴파일을 사용합니다.

5. 자바스크립트 엔진의 종류

  • Google의 V8 -> 가장 많이 사용되는 JavaScript 엔진
  • SpiderMonkey는 Firefox 및 해당 포크와 함께 사용하기 위해 Mozilla에서 개발했습니다.

  • JavaScriptCore는 Apple의 Safari 브라우저 엔진입니다.

    -> 다른 WebKit 기반 브라우저에서도 사용됩니다.

  • Chakra는 원래 Microsoft에서 Edge 브라우저용으로 포크한 Internet Explorer 브라우저의 엔진이지만 Edge는 나중에 Chromium 기반 브라우저로 재구축되어 현재 V8을 사용합니다.