gpt4 book ai didi

java - Nashorn 无法执行 MATH 函数

转载 作者:行者123 更新时间:2023-12-01 18:04:15 25 4
gpt4 key购买 nike

我在java中使用Nashorn脚本引擎来评估表达式,

下面的log代码有效,

ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine engine = mgr.getEngineByName("noshorn");
engine.eval("Math.log(99);");

log10 失败,

ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine engine = mgr.getEngineByName("noshorn");
engine.eval("Math.log10(99);");

它抛出一个异常,说:

Caused by: <eval>:1 TypeError: Cannot call undefined

我该如何解决这个问题。请帮忙。

最佳答案

默认初始化的Math不是java系统Math。如果你想要java的数学使用:

var JavaMath = Java.type("java.lang.Math");

然后你就可以使用所有的数学方法了。我很惊讶 Nashorn 没有提供 javascript Math Object ,这将有 log10。

关于java - Nashorn 无法执行 MATH 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37992670/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com