我有一段带有嵌入式Rhino的Java代码(省略了无关的位):
Context cx = Context.enter();
Scriptable scope = cx.initStandardObjects();
scope.put("foo", scope, Context.toObject(foo, scope));
ScriptableObject.putProperty(scope, "bar", Context.javaToJS(bar, scope));
其中foo
延伸ScriptableObject
而bar
只是一个没有父母的POJO。
在这种特殊情况下,是否添加foo
和bar
的方式之间存在任何差异,或者结果是否相同?
我尝试过咨询文档,但我找不到任何答案。最后我只是查找了源代码( rhino1_7R1 版本),我的猜测是在这种情况下并不重要。或者是吗?
答案 0 :(得分:2)
我认为你是对的。我相信我和你一样进行了同样的代码阅读,并得出了同样的结论。范围的顶级对象与范围的属性相同。