🗣자바스크립트 코드를 읽고, 해석해서 실행해주는 프로그램🔍
즉, 우리가 작성한 JS 코드를 컴퓨터가 이해하고
실행할 수 있게 해주는 뇌 같은 역할🧠
| 브라우저 | JS 엔진 이름 |
|---|---|
| 크롬, 엣지 | V8 ( 가장 유명 ) |
| 파이어폭스 | 스파이더 몽키 |
| 사파리 | 자바스크립트 코어 |
| 인터넷 익스플로러 ( 옛날 브라우저 ) | 차크라 |

컴퓨터 프로세서는 오직 0 & 1만 이해할 수 있기 때문에
우리가 작성한 소스 코드를 머신 코드로 변환해줘야함🔄
✅ 변환 과정은 컴파일 & 인터프리터를 통해 일어남
🧠 인터프리터( Interpreter )
- 코드를 한 줄씩 읽고 바로 실행하는 방식
- 🧾 예시 :
Python,JavaScript- 💬 비유 : “책을 한 줄씩 읽으면서 바로바로 통역하는 느낌!”
🧠 컴파일( Compile )
- 전체 코드를 한 번에 기계어로 번역해서 실행하는 방식
- 🧾 예시 :
C,C++- 💬 비유 : “책을 한꺼번에 전부 번역해서 읽는 느낌!”
| 언어 | 설명 |
|---|---|
| Javascript | 브라우저에서 실행될 때 JIT 방식 사용( 예 - V8 엔진 ) |
| Java | JVM이 바이트코드를 실행할 때 JIT으로 최적화 |
| C# | .NET에서 실행될 때 JIT으로 네이티브 코드로 바꿔서 실행 |
| Kotlin | Java 기반이기 때문에 JIT 사용 가능 |
| Lua( LuaJIT ) | Lua 언어의 빠른 실행 버전에서 사용 |
| Python( PyPy ) | PyPy는 Python의 JIT 컴파일러 버전 |