我想使用 Java 的 ScriptEngine,但我在使用 javascript split 函数时遇到一些问题,如下所示:
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("javascript");
Bindings bindings = engine.createBindings();
bindings.put("example", "123/456/789");
String s1 = "var obj = example.split(\"/\"); print(obj[0]);";
Object result = engine.eval(s1, bindings);
System.out.println(result);
当我评估脚本时;此代码打印“123null”,因为结果为 null。当我尝试返回语句而不是像这样打印时:
String s1 = "var obj = example.split(\"/\"); return obj[0];";
抛出异常:
线程“main”javax.script.ScriptException中出现异常:sun.org.mozilla.javascript.internal.EvaluatorException:第1行中的无效返回(#1)
那么我应该如何从这个分割的 native 数组中获取第一个索引的值?
最佳答案
尝试:
var obj = example.split(\"/\"); obj[0];
关于java - 如何将 Javascript 数组结果输入到 Java 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16854462/