我对 Rhino 很陌生,我的问题是如何实现以下目标,
假设我有一个 javascript 对象,它遵循如下所示的内容,我可以在 java 中使用它。
var myObject = new Object();
myObject.string1 = "Hello";
myObject.string2 = "World";
myObject.int1 = 1;
但是如果它是动态的,我该如何在 java 中使用它呢?对于例如如果您决定在 javascript 中动态向此对象添加更多成员。这可行吗?我的猜测是java中定义的类必须考虑所有可能的成员才能做到这一点?
希望我已经解释了我想要正确实现的目标。
JavaScript 对象,当您在 Java 中访问它们时,本质上都是同一个类:ScriptableObject
它实现了Scriptable
界面(GitHub 来源) https://github.com/mozilla/rhino/blob/master/src/org/mozilla/javascript/Scriptable.java。还有一些其他类用于函数和其他专用对象。
The Scriptable
接口包括类似的方法get
, has
, and put
大致对应于myObject.string1
, myObject.hasOwnProperty("string1")
, and myObject.string1 = "Hello"
在 JavaScript 中。这ScriptableObject
类添加了一些其他有用的方法来定义属性等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)