# 介绍

ES4X是一款支持EcmaScript >=5应用的小型运行时。该运行时借助vert.x (opens new window)并使用了graaljs (opens new window)实现。JavaScript是一个需要运行时支持的语言,但nodejs并非唯一的运行时,JavaScript可借助nodejs运行。

# 工作原理

部署ES4X应用跟开发其他 JavaScript 应用并无太大区别。项目使用package.json文件定义,并从npm (opens new window)maven central (opens new window)中获取依赖。

ES4X提供基于JVM扩展的多语言运行时GraalVM (opens new window)。这意味着您在使用JavaScript的同时亦可使用其它的JVM语言。

ES4X使用Vert.x以提供优化后的 event loop 线程及高性能IO库。然而在JavaScript中使用Java可能会比较枯燥无味因为无法让IDE提供类型推断等原生支持。 有鉴于此,ES4X提供了一些发布在npmjs上的包以简化开发。包括一个小型的shimJava API映射成JavaScript API并提供.d.ts定义文件。

# 性能表现

根据第18轮 (opens new window)TechEmpower框架评测提供的数据,ES4X是最快的JavaScript框架:

round-18-js

并且在多项评测中,ES4X均位列所有框架前十,展示出比其它流行的JVM框架更好的表现:

round-18-js