您现在的位置是:首页 > 文章详情

java 调用 JavaScript

日期:2018-09-17点击:577

获得 JavaScript 脚本引擎

ScriptEngineManager scriptEngineManager = new ScriptEngineManager(); ScriptEngine engine = scriptEngineManager.getEngineByName("javascript");

定义获取变量

// 定义变量 engine.put("msg", "this is msg"); // 获取变量 System.out.println(engine.get("msg"));

定义并执行方法

// 定义函数 engine.eval("function add (num1, num2) {return num1 + num2;}"); // engine 该类同样实现了 Invocable 接口 : 转型过去拿到 API Invocable invocable = (Invocable) engine; // 调用函数 Object invokeFunction = invocable.invokeFunction("add", new Object[] {10, 10}); System.out.println(invokeFunction);

执行本地 JavaScript 代码

URL resource = JavaScriptDemo.class.getClassLoader().getResource("JavaScriptDemo.js"); FileReader fileReader = new FileReader(resource.getPath()); engine.eval(fileReader); fileReader.close();

外部 JavaScript 代码

/** * 被java调用的外部 JavaScript */ function demo() { var i = 110; var j = 110; console.log("this is a i + j : " + (i + j)); } demo();

执行复杂的算数表达式

Object eval = engine.eval("10 * 10 + 10"); System.out.println(eval);
原文链接:https://yq.aliyun.com/articles/641640
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章