从java方法调用javaScript

Abh*_*sai 8 javascript java

我想从Java执行JavaScript函数.我使用了以下代码

ScriptEngineManager manager = new ScriptEngineManager();    
ScriptEngine engine = manager.getEngineByName("JavaScript"); 
Run Code Online (Sandbox Code Playgroud)

但这会引发该alert()方法的异常?

engine.eval("alert('HI');");
Run Code Online (Sandbox Code Playgroud)

M S*_*ach 1

你不能以任何方式从java调用javascript。javascript是客户端语言,在浏览器上执行,而java在服务器上执行

更新:- 谢谢大家,我在这里学到了一些新东西。

当我在 op 中执行代码时出现以下错误

Error executing script: ReferenceError: "alert" is not defined in <eval> at line number 1
Run Code Online (Sandbox Code Playgroud)

原因是alert不是JavaScript的一部分,它是Web浏览器提供的window对象的一部分。所以,Nashhorn javascript引擎不知道它。

请参阅 参考错误:“警报”未定义