您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Rhino Javascript:如何将Object转换成Javascript原语?

Rhino Javascript:如何将Object转换成Javascript原语?

尝试以下

 public static void main(String [] args) throws Exception {
        ScriptEngine engine = new ScriptEngineManager().getEngineByName ("rhino"); 
        data data = new data();
        Context.enter().getWrapFactory().setJavaPrimitiveWrap(false);

        try 
        { 
                engine.eval("function test(data) { return data.get('value1') + 5;};"); 
                System.out.println("Result:" + ((Invocable)engine).invokeFunction("test", data)); 
        } 
        catch (Exception e) 
        { 
                e.printStackTrace(); 
        } 
    }

    public static class data 
    { 
       Double value = 1.0d; 
       public Number get(String arg)  {  return value; } 
    }

另外,您可以修改javascript函数以将值显式转换为数字:

function test(data) { return parseInt(data.get('value1'), 10) + 5;}
javascript 2022/1/1 18:28:08 有343人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶