dr_py/doc/python最强js引擎.md
2023-04-23 21:04:12 +08:00

2.7 KiB
Raw Permalink Blame History

人生苦短,我用python

不想换行,js最强

道长踩过的坑,推荐一波python的js引擎

从弱到强推荐,大家仔细看

模块 性能 es6 python交互 相关文档 架构兼容性 个人评价
pyv8 较差 年代久远,可以放弃了
PyExecJS 年代久远,应用挺多,勉强能用
v8py 完美支持 文档少,架构兼容性差,不太会用
pyjsparser 一般 几乎不用
dukpy 部分支持 支持 官仓示例 没见人用过
py_mini_racer 一般 完美支持 不支持js交互,文档少,架构兼容性差,不怎么会用
js2py 一般 部分支持,实际应用鸡肋 还行 python交互好,没得选了
quickjs 完美支持 部分支持 几乎没有 有测试案例代码,看完就会用,issue有人提了交互的更多代码
jsengine 完美支持 部分支持 几乎没有 quickjs的个人封装,比较新,整合怪
thquickjs 完美支持 部分支持 几乎没有 quickjs的个人封装,比较新,python交互不如js2py

本项目的最终选择

quickjs + js2py

使用说明

quickjs负责读取js文件源的模块,速度非常快
js2py负责python执行js的源逻辑交互python注入的任意类型变量

研究方向

quickjs如何交互python非基础类型数据,看quickjs的pr和issue有人提出过,但是作者没有合并以及修改支持,需要自己动手了