Zettelkasten

V8 엔진

·수정 2026.04.23·수정 1
  • Just In Time(JIT) Compliation
    • 자주 실행되는 코드를 감지해서, 기계어로 컴파일하고 이후 반복되는 로직에 대해 컴파일 버전을 사용
  • Javascript => Bytecode(faster)
  • Mark and Sweep GC
  • Efficient Heap Memory Management
    • 자바스크립트는 기본적으로 동적 타입 언어이기 때문에 특정 오브젝트가 얼마나 큰지 알 수 없음

데이터

  • primitive한 데이터는 stack에 저장
  • object와 array는 heap 에 저장
    • 하지만 이 둘 모두 object 처럼 다뤄짐
  • object는 2개의 array를 갖고 있음
    • Name Properties
      • {"a": 50, "b": 40}
    • Elements(index based)
      • {0: 30, 1: 20}
    • ex) {"a": 50, "b": 50, 8: 90}
      • {"a": 50, "b": 50} => named property
      • {8:90} => elements

V8 Engine Object

함께 읽기 좋은 글