Python和JavaScript间代码转换4个东西
当前位置:以往代写 > Python教程 >Python和JavaScript间代码转换4个东西
2019-06-14

Python和JavaScript间代码转换4个东西

Python 照旧 JavaScript?固然不少伴侣还在争论二者今朝谁更强势、谁又拥有着更为光亮的成长前景,但毫无疑问,二者的竞争在 Web 前端规模已经拥有明晰的谜底。驻足于欣赏器平台,假如放弃 JavaScript,我们也就没什么可选择的项目了。

好吧,也许谜底也不是这么绝对。JavaScript 已经成为浩瀚其它编程语言争相选择的转换方针(相关实例包罗 TypeScript、Emscripten、Cor 以及 Cheerp)。而 Python 则拥有复杂的跟随者群体,别的现有的强大库资源则使其成为面向 JavaScript 的抱负待转换可能说转译选项。

下面来看四个可以或许顺利将 Python 带入 JavaScript 世界的项目:

Transcrypt

这是一款新近崛起的 Python 到 JS 转译器。Transcrypt 对付自身所生成代码的质量程度做出了令人印象深刻的理睬。首先,它会尽大概多地保存原始的 Python 代码布局,包罗多重担任以及 lambda 表达式。Python 源代码也可以直接对 JavaScript 中定名空间内的工具举办挪用。假如各人实验会见 Python 中的 document.getElementById,则转换后的代码也将在JavaScript 傍边切换利用 document.getElementById。

按照说明文档的先容,Transcrypt 是操作 CPython 的抽象语法树模块完成这些转译任务的,其可以或许按照 Python 对自身代码的理会方法举办编程会见。尽量该项目今朝仍处于 alpha 测试阶段,但已经显示出了很是惊人的吸引力。

Jiphy

所谓 Jiphy,代表的是“JavaScript 入,Python 出”——也就是可以或许对二者举办双向转换。别的,来自两种语言的代码都可以或许在被转换为另一种语言之前举办殽杂。

Jiphy 今朝的最大短板在于其仅支持 Python 的一部门成果集。类以及默认参数尚不受支持,不外装饰器与破例机制已经可以正常利用。这主要是因为 Jiphy 僵持在源代码与方针代码之间回收行对行直接转译方法,不外其开拓人员也开始着眼于 ES6 中的新成果,旨在将更多高级 Python 成果纳入支持领域。

Brython

也许有一天,当 WebAssembly 设想成为现实,那么我们将可以或许选择任何本身偏好的语言举办 Web 开拓。而 Brython 对此——可能说至少合用于 Python 3——有着本身的领略:为什么要等?

Brython 通过一套 JavaScript 库对 Python 3 中的全部要害字以及大大都内置插件举办模仿,从而实现了将 Python 3 版本作为客户端 Web 编程方案的方针。由 Python 编写的剧本可以被直接添加到网络页面傍边,而 Brython 还支持一套高级 Python模块界面(browser),用于同 DOM 举办执行协作,且该欣赏器凡是可在 JavaScript 中直接完成。

然而,Brython 也保持了欣赏器给 JavaScript 代码带来的限制——譬喻不支持对当地文件系统举办处理惩罚。

RapydScript

RapydScript 理睬“让 Python 式 JavaScript 代码不再糟糕。”该项目在观念上雷同于 CoffeeScript:以 Python 形式举办代码编写,生成 JavaScript 代码,并同时发挥二者的最佳特性。在 Python 方面,其拥有清晰的语礼貌则; 而在 JavaScript 方面,其拥有匿名函数、DOM 操纵并可以或许利用 jQuery 可能 Node.js 内核等现有 JavaScript 库。

    关键字:

在线提交作业