Rhino:
rhino是使用java代码实现的javascript解释器,它实现了javascript的核心,符合Ecma-262标准。
例如使用java代码执行javascript如下:
public static void main(String[] args) {
Context ctx = Context.enter();
Scriptable scope = ctx.initStandardObjects();
scope.put("x", scope, new Integer(20));
scope.put("y", scope, new Integer(30));
try {
ctx.evaluateString(scope, "var result=x+y", "", 1, null);
System.out.println(scope.get("result", scope));
} finally {
Context.exit();
}
}
这样就能打印20+30的结果了。
rhino执行该代码的过程:
1.先设置环境,生成各种javascript的本地对象,如:Object,Function
2.使用语法分析对字符串进行分析生成ast。
3.然后再使用IRFactory类将ast转换中间表示形式。
4.然后再将该中间表示形式转换为二进制代码。
5.然后执行该代码得出结果。
Rhino的包结构:
org.mozilla.javascript包:
该包内的对象是实现javascript的主要对象。
org.mozilla.javascript.ast包:
rhino中语法分析器生成的ast表示类都在该包内。
org.mozilla.javascript.debug包:
该包实现了javascript的debug功能。
org.mozilla.javascript.optimizer包:
该包实现了javascipt生成代码的代码优化。
org.mozilla.javascript.regexp包:
该包实现了javascript正侧表达式的功能。
以上就为Rhino的主要包。
分享到:
相关推荐
Rhino 3D 4.0产品造型设计学习手册,本书全面介绍了Rhino 3D这一强大的工业设计软件,本书从基础知识开始,通过一系列实例介绍了Rhino 3D的基本工具、使用技巧和运用方法。
Rhino (犀牛) 6.0 完整版中文教程,Rhino 自学教程,PDF 文档。Rhino Rhino Rhino Rhino Rhino Rhino Rhino
3D软件rhino C++二次开发学习资料
V-Ray_for_Rhino渲染器高级原理教程
rhino插件-Hare 2022.0.05,应用于于幕墙等方面的一款小插件! rhino插件-Hare 2022.0.05,应用于于幕墙等方面的一款小插件! rhino插件-Hare 2022.0.05,应用于于幕墙等方面的一款小插件! rhino插件-Hare 2022.0....
Rhino的jar包。 Rhino 是开源的 JavaScript 引擎,是完全基于 Java 实现,几乎可以使用 JavaScript 完成 Java 所有的工作。
rhino 文件导入到工程类软件的问题 如SW PROE CATIA
rhino导入到sketchup流程,随着rhino普及,越来越多的人开始接触Rhino了,但是Rhino如何导入SU,我给大家做个介绍吧。
Rhino(犀牛)中文教程
RhinoResurf 1.88 for Rhino x86x64 中文完美版.exe 生成曲面用的好工具,在某种情况下还是很好用的。这个工个针对。
rhino注册
rhino缩略图查看工具非常的好用 希望大家需要
Vray你的Rhino].Cafer.J.扫描版
rhino戒指建模教程
Rhino_Debugger Rhino引擎的JS调试工具 直接可运行Jar
Rhino扩展codelistener.rhi python用
中文版rhino 5.0完全自学教程.pdf
rhino 路径跟随插件(supersweep/rhino7),自由跟随,可多个件跟随
犀牛4.0rhino操作快捷键
用Rhino软件教做奥迪车