본문으로 건너뛰기

문서

V8는 Google의 오픈 소스 고성능 JavaScript 및 WebAssembly 엔진으로, C++로 작성되었습니다. 이는 Chrome 및 Node.js를 포함한 여러 곳에서 사용됩니다.

이 문서는 V8을 응용 프로그램에서 사용하려는 C++ 개발자와 V8의 설계 및 성능에 관심이 있는 모든 사람을 대상으로 합니다. 이 문서는 V8에 대해 소개하며, 나머지 문서는 코드 내에서 V8을 사용하는 방법, 일부 설계 세부 정보 및 V8의 성능을 측정하기 위한 JavaScript 벤치마크를 제공합니다.

V8 소개

V8는 ECMAScriptWebAssembly를 구현하며, x64, IA-32 또는 ARM 프로세서를 사용하는 Windows, macOS 및 Linux 시스템에서 실행됩니다. 추가 시스템(IBM i, AIX) 및 프로세서(MIPS, ppcle64, s390x)는 외부에서 유지됩니다. 자세한 내용은 포트를 참조하세요. V8는 C++ 응용 프로그램에 임베드될 수 있습니다.

V8는 JavaScript 소스 코드를 컴파일하고 실행하며, 객체를 위한 메모리 할당을 처리하고, 더 이상 필요하지 않은 객체를 가비지 수집합니다. V8의 스톱-더-월드 방식의 세대별 정확한 가비지 수집기는 V8의 성능의 주요 요소 중 하나입니다.

JavaScript는 일반적으로 브라우저에서 클라이언트 측 스크립팅에 사용되며, 예를 들어 문서 객체 모델(DOM) 객체를 조작하는 데 사용됩니다. 그러나 DOM은 일반적으로 JavaScript 엔진이 아닌 브라우저에 의해 제공됩니다. V8에도 동일하게 적용되며, Google Chrome이 DOM을 제공합니다. 그러나 V8는 ECMA 표준에 지정된 모든 데이터 유형, 연산자, 객체 및 기능을 제공합니다.

V8는 모든 C++ 응용 프로그램이 자체 객체와 기능을 JavaScript 코드에 노출할 수 있게 합니다. JavaScript에 노출할 객체와 기능은 여러분이 결정할 몫입니다.

문서 개요