我一直在使用 rhino 来允许定制一些应用程序。下面是一个从 Java 调用的 JavaScript 函数示例:
function() {
var phone = this.telephoneNumber;
phone = phone.replace(/[^+0-9]/g,"");
if (phone.indexOf("+") == 0) {
phone = "00" + phone.substring(1);
}
if (phone.indexOf("0041") == 0) {
phone = "0" + phone.substring(4);
}
if (phone.indexOf("0") == 0) {
phone = "0" + phone;
}
return {
Name: this.sn + " " + this.givenName,
firstName: this.givenName || "",
lastName: this.sn || "",
phone: phone,
service: "",
info: ""
};
}
然后,Java 应用程序可以获取返回对象的值以执行它需要执行的任何操作。
现在 rhino 是 JVM 的一部分,我想使用脚本 API 而不是 Rhino API,但我还没有找到如何从 Java 代码中获取 JavaScript 对象的字段值。