[英]How can I wipe the JS environment in Rhino within the interperter?
我有一个问题,我正在加载多个 JS 文件,然后在 JavaScript 中执行一个函数,然后我想擦除已加载对象的全局命名空间,并在执行下一个 JavaScript 函数之前加载一组不同的 JS 文件。
这里有没有人知道在不退出 Rhino JavaScript 解释器的情况下这样做的好方法。
你究竟是如何执行脚本的? 一些代码示例会有所帮助。
前段时间我是这样用的:
Object obj = ScriptableObject.getProperty (scope, methodName);
Callable fun = (Callable) obj;
Scriptable thisObj = scope;
scope = ScriptableObject.getTopLevelScope (scope);
Object result = fun.call(cx, scope, thisObj, args);
其中 scope 包含之前创建的所有加载对象, cx 是 Context 的一个实例。
所以你不需要擦除任何东西 - 只需使用新的范围。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.