ECMAScript 엔진 목록
List of ECMAScript enginesECMAScript 엔진은 ECMAScript 언어 표준 버전(예: JavaScript)으로 작성된 소스 코드를 실행하는 프로그램입니다.
ECMAScript 엔진
JIT 컴파일 엔진
이들은 웹 브라우저용 신세대 ECMAScript 엔진으로 모두 JIT(Just-In-Time Compilation) 또는 그 아이디어의 변형을 구현하고 있습니다.Just-in-Time 컴파일의 성능상의 이점은 JavaScript로 작성된 웹 애플리케이션에 훨씬 더 적합합니다.
- Carakan: Opera Software ASA가 개발한 JavaScript 엔진으로, Opera 웹 브라우저의 10.50 릴리스에 포함되어 있으며, Opera 15(2013년 [1][2][3][4]출시)에서 V8로 전환될 때까지의 버전입니다.
- Chakra(JScript9):Internet Explorer에서 사용되는 JScript 엔진.MIX 10에서 Internet Explorer 9 플랫폼 [5]미리보기의 일부로 처음 공개되었습니다.
- Chakra: Microsoft [6]Edge에서 사용되는 JavaScript 엔진입니다.
- SpiderMonkey: Firefox를 포함한 Mozilla Gecko 응용 프로그램의 JavaScript 엔진입니다.이 엔진에는 현재 IonMonkey 컴파일러와 OdinMonkey 최적화 모듈이 포함되어 있으며 이전에 TraceMonkey 컴파일러(최초의 javascript JIT)와 JégerMonkey가 포함되어 있습니다.
- JavaScriptCore: KJS에서 파생된 JavaScript 인터프리터 및 JIT.WebKit 프로젝트 및 Safari 등의 애플리케이션에서 사용됩니다.니트로, 다람쥐 물고기, 다람쥐 물고기 [7]익스트림으로도 알려져 있다.
- JScript.네트워크: A.ASP에서 사용되는 NET Framework JScript 엔진입니다.NET은 공통 언어 런타임 및 COM Interop을 기반으로 합니다.아쉽게도 지원이 에서 끊어졌습니다.NET Core와 CoreCLR은 ASP의 장래가 불투명해 보입니다.NET 코어
- 타마린:Adobe Flash에서 사용되는 ActionScript 및 ECMAScript 엔진.
- V8: Google Chrome 및 기타 Chromium 기반 브라우저, Node.js, Deno 및 V8에서 사용되는 JavaScript 엔진입니다.그물.
- GNU Guile은 버전 1.9 이후 ECMAScript 인터프리터를 탑재하고 있습니다.
- Nashorn: 버전 [8]8 이후 Oracle Java Development Kit(JDK)에서 사용되는 JavaScript 엔진입니다.
- iv, ECMAScript Lexer / 파서 / 인터프리터 / VM / 메서드 JIT가 C++[9]로 작성되었습니다.
- CL-JavaScript: JavaScript를 기계어로 [10]컴파일하는 공통 리스프 구현에서 기계어로 컴파일할 수 있습니다.
- BESEN: 오브젝트 [11]파스칼로 작성된 ECMAScript Fifth Edition의 완전한 JIT 컴파일 구현.
- 에르메스: 페이스북이 React Native 모바일[12] 앱용으로 개발
- Graal.js: GraalVM용 ECMAScript 준거 JavaScript 엔진으로 Node.js 응용 프로그램도 실행할 수 있는 언어 상호 운용성을 지원합니다.
런타임 인터프리터 엔진
다음 엔진은 런타임 인터프리터를 사용합니다.이 인터프리터는 네이티브머신 코드로 컴파일되지 않고 일반적으로 동작이 더 느립니다.
- 연속체:ECMAScript 2015 [13]사양의 오래된 초안을 지원하는 셀프 인터프리터입니다.특이하게도 이 엔진은 ECMAScript 3에 구현되어 있어 IE6 [14]이전 브라우저에서 ES2015를 실행할 수 있게 되었습니다.
- 미래:Opera 웹 브라우저 버전9.50 ~ 10.10의 ECMAScript 엔진
- 인스크립트:iCab 2 및 3에 사용되는 오래된 전용 라이브러리입니다.
- JScript:IE9 이전 버전에서 Internet Explorer에서 사용되는 엔진 및 MSHTML(Trident) 브라우저 엔진의 1개의 컴포넌트.
- Jint:용 통합 엔진을 탑재한 Javascript 인터프리터.그물
- KJS: Konqueror에서 사용되는 엔진 및 JavaScriptCore의 이전 버전인 KHTML의 구성 요소 중 하나.
- 선형 B: Opera 웹 브라우저 버전 7.0 ~9.50의 ECMAScript 엔진(배타적).
- 나르시스: JavaScript(메타 서클 평가자)에 실장된 JavaScript는 이론 및 교육적인 성격의 다른 JavaScript 엔진에서만 실행되도록 의도되어 있습니다.
- JS-Interpreter 단계별 실행으로 JavaScript에 구현된 경량 JavaScript 인터프리터.
- QtScript:원래 트롤텍이 개발했으며 현재는 Qt Company가 소유하고 있습니다.JavaScriptCore와의 QObject 통합을 제공합니다.
- V4(QJSENGINE):QT의 새로운 ECMAScript 엔진으로 QML과 QtQuick을 지원합니다.ES6에 준거하여 Qt Company에서 개발 중입니다.V4는 JIT [15]컴파일입니다.
- Rhino: Java 플랫폼을 사용하는 Mozilla의 여러 JavaScript 엔진 중 하나입니다.
- YAJI:Jean-Marc Lugrin이 1999년에 FESI를 구현한 ECMAScript 엔진. Java 플랫폼을 사용하여 현재 최신 표준을 지원하도록 개발 중입니다(ECMAScript 사양 262, v5.1).[16][17][18]
- Duktape: 설치 공간이 작고 삽입이 용이한 Ecmascript E5/E5.1 엔진.[19]
- XS JavaScript 엔진:리소스가 [20][21]제한된 마이크로컨트롤러를 위한 ECMAScript 2020 준거 엔진.XS는 Moddable SDK의 일부로 Moddable에 의해 유지되며, 이전에는 Kinoma [22]Platform의 일부였습니다.
- Jsish: SQLite, JSON, WebSocket 및 ZVFS를 지원하는 [23]ES5.1 서브셋인터프리터.
- Websocket.js: HTTP/Websocket을 [24]지원하는 내장형 Javascript 엔진.
- 에스프레이노:마이크로컨트롤러 전용의 매우 작은 공간 인터프리터.(바이트 코드가 아닌) 소스에서 실행함으로써 8kB 미만의 RAM에서 실행할 수 있습니다.
- MuJs: 다른 소프트웨어에 삽입하여 스크립트 기능을 확장하도록 설계된 경량 ECMAScript 인터프리터 라이브러리입니다.원래 [25]MuPDF용으로 개발되었습니다.
- mJ: 제한된 JavaScript 엔진.사물 인터넷(IoT)에 사용됩니다.
- Tiny-JS: C++로 작성된 최소한의 JavaScript 인터프리터.
- JerryScript:64KB 미만의 RAM을 가진 마이크로 컨트롤러용 삼성 경량 JavaScript 엔진입니다.
- njs: 웹 서버 스크립팅 및 가장 빠른 VM 컨텍스트 작성에 최적화된 경량 JavaScript 인터프리터.[26]nginx에서 사용됩니다.
- QuickJS: Fabrice Bellard와 Charlie Gordon의 경량 ECMAScript 6 통역.
- engine262: 개발 및 탐색을 위해 JavaScript로 작성된 JavaScript 엔진입니다.주로 ECMAScript 사양을 검증하기 위해 사용됩니다.
- Boa: [27][28]Rust로 작성된 JavaScript 엔진입니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "Archived copy". Archived from the original on 2009-05-31. Retrieved 2009-07-09.
{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크) - ^ "Opera Desktop Team's Blog Opera". Archived from the original on 2006-03-03.
- ^ "Dev.Opera — Blog".
- ^ "Dev.Opera — Blog".
- ^ Frequently Asked Questions, Microsoft, 2010-03-13, archived from the original on 2010-03-22, retrieved 2010-03-18
- ^ "Targeting Edge vs. Legacy Engines in JsRT APIs". Retrieved 10 September 2015.
- ^ "JavaScriptCore – WebKit".
- ^ "Oracle Nashorn: A Next-Generation JavaScript Engine for the JVM".
- ^ "Constellation/iv". GitHub. Retrieved 2015-11-15.
- ^ "CL-JavaScript". Retrieved 2018-09-14.
- ^ "Support me". GitHub. 18 November 2021.
- ^ "Using Hermes". Facebook. Retrieved 9 April 2021.
- ^ http://www.ecma-international.org/ecma-262/6.0/
- ^ "An ES6 Virtual Machine Built in JavaScript". Archived from the original on 2012-12-03. Retrieved 2012-12-01.
- ^ "V4 - Qt Wiki". wiki.qt.io. Retrieved 2021-04-24.
- ^ "ECMAScript Language Specification ECMA-262 5.1 edition" (PDF). Ecma International. June 2011. Archived from the original (PDF) on 2015-04-12. Retrieved 2012-01-31.
- ^ "YAJI: Yet Another JavaScript Interpreter". Google Code. Retrieved 2012-01-31.
- ^ "FESI". September 2003. Archived from the original on 2012-09-06. Retrieved 2012-08-06.
- ^ "Duktape". Retrieved 2013-09-21.
- ^ https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/xs/XS%20Conformance.md#results
- ^ "Apps for IoT". Archived from the original on 2018-12-28.
- ^ https://www.moddable.com/XS7-TC-39
- ^ "Jsish". Retrieved 2014-04-30.
- ^ "Websocket.js". GitHub. Retrieved 2014-07-16.
- ^ "MuJS". Retrieved 2014-09-22.
- ^ "NGINX JavaScript in Your Web Server Configuration". YouTube. Archived from the original on 2021-12-13. Retrieved 2018-10-30.
- ^ "Let's build a JavaScript Engine". 2019.jsconf.eu. Retrieved 2022-03-23.
- ^ "GitHub - jasonwilliams/boa: Boa is an embeddable and experimental Javascript engine written in Rust". github.com. Retrieved 2022-04-08.