gojaES51Go 实现的 ECMAScript 5.1(+)

联合创作 · 2023-09-23 03:15

goja 是一个 Go 实现的 ECMAScript 5.1(+)。

它不是 V8 或 SpiderMonkey 或任何其他通用 JavaScript 引擎的替代品,因为它更慢。它可以作为一种嵌入式脚本语言使用,或者可以作为避免非 Go 相关性的一种方式。

灵感来源于 otto 。

特性

  • 完全支持 ECMAScript 5.1

  • 通过几乎所有用 es5id 标记的 tc39 测试

  • 平均比 otto 快6-7倍,同时使用相当少的内存

基本示例

vm := goja.New()
v, err := vm.RunString("2 + 2")
if err != nil {
    panic(err)
}
if num := v.Export().(int64); num != 4 {
    panic(num)
}
浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报