如何获得Javascript数组结果到Java

How to get Javascript array result into Java?

本文关键字:Java 结果 数组 何获得 Javascript      更新时间:2023-09-26

我想使用Java的ScriptEngine,但我有一些麻烦javascript拆分函数如下:

    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",因为结果为空。当我尝试返回语句而不是像这样打印时:

    String s1 = "var obj = example.split('"/'"); return obj[0];";

抛出异常:

线程"main"异常javax.script.ScriptException: sun.org.mozill.javascript .internal. evaluatoreexception: invalid return (#1) in at line number 1

那么我应该如何从这个分裂的本地数组中获得第一个索引的值呢?

尝试:

var obj = example.split('"/'"); obj[0];