상위 질문
타임라인
채팅
관점

자바스크립트 엔진

위키백과, 무료 백과사전

자바스크립트 엔진
Remove ads

자바스크립트 엔진(JavaScript engine)은 자바스크립트 코드를 실행하는 프로그램 또는 인터프리터이다. 자바스크립트 엔진은 전통적인 인터프리터일 수도 있고, 특정한 방식으로 바이트코드JIT 컴파일을 할 수 있다.[1] 여러 목적으로 자바스크립트 엔진을 사용하지만, 대체적으로 웹 브라우저에서 사용된다.[2][3]

역사

2008~2009년에 2차 브라우저 전쟁 이전에 자바스크립트 엔진(자바스크립트 인터프리터, 자바스크립트 구현체로 불렸음)은 단순히 자바스크립트 소스 코드를 읽고 실행했던 인터프리터였다.

최초의 자바스크립트 엔진은 넷스케이프 내비게이터 웹 브라우저를 위해 넷스케이프브렌던 아이크에 의해 개발되었다. 코드명 스파이더몽키의 엔진은 C++로 구현되어 있다. 그 뒤로 (자바스크립트 1.5에서) ECMA-262 에디션 3을 준수하며 업데이트되었다. Norris Boyd(넷스케이프 출신)가 주로 개발한 라이노 엔진은 자바의 자바스크립트 구현체이다. 스파이더몽키처럼 라이노는 ECMA-262 에디션 3을 준수한다. 이 기술의 응용 프로그램에는 애플 사파리 4의 Nitro, 구글 크롬의 V8, 모질라 파이어폭스 3.5스파이더몽키가 있다.

현재까지 자바스크립트의 가장 일반적인 호스트 환경은 웹 브라우저이다. 웹 브라우저는 일반적으로 퍼블릭 API를 사용하여 문서 객체 모델(DOM)을 자바스크립트에 반영하는 일을 맡는 호스트 오브젝트를 생성한다.

Remove ads

자바스크립트 엔진

활동 중인 프로젝트

활동하지 않는 프로젝트

  • Tamarin: 어도비 랩스에 의해 개발
  • Carakan: 오페라 소프트웨어가 개발. 오페라 웹 브라우저 버전 10.50까지 사용하다가 오페라 14 (2013년 출시)에서 V8로 전환.[7][8]
  • Futhark: 오페라 소프트웨어가 개발. 0.50부터 10.10까지 오페라 웹 브라우저에 쓰이다가 2010년 3월 출시된 오페라 10.50의 Carakan에 의해 대체됨.
  • Narcissus: 오픈 소스. 스파이더몽키를 개발한 Brendan Eich가 작성함.
Remove ads

구현체

자바스크립트는 ECMA스크립트의 방언이며 수많은 응용 프로그램, 특히 웹 브라우저에서 지원된다. 방언에는 언어, 표준 라이브러리, 또 W3C 특화 문서 객체 모델(DOM)과 같은 관련 API의 확장이 포함될 수 있다. 즉, 응용 프로그램이 공통 하위 집합의 지원 기능과 APi(코어)만을 사용하여 작성되지 않을 경우 하나의 방언으로 작성된 응용 프로그램은 다른 것과는 호환되지 않을 수 있음을 뜻한다.

방언과 구현체는 별개이다. 방언은 한 언어의 종류이며 언어(방언)의 구현체는 해당 언어로 작성된 프로그램을 실행한다.

자세한 정보 응용 프로그램, 방언과 최신 버전 ...

같이 보기

  • 브라우저 속도 테스트

각주

Loading content...

외부 링크

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads