gpt4 book ai didi

javascript - ScriptEngine JavaScript 不支持包含?

转载 作者:行者123 更新时间:2023-11-29 20:59:10 25 4
gpt4 key购买 nike

我有一些代码如下。

ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("nashorn");
engine.eval("[1, 2, 3].includes(1)");

但是会抛出如下错误

javax.script.ScriptException: TypeError: [1, 2, 3].includes is not a function in <eval> at line number 1
at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:470)
at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:454)
at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:406)
at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:402)
at jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)

我可以改用 indexOf(1),这似乎可行,但是我无法访问此解析器的 includes 是不是有原因?

最佳答案

String.prototype.includes 在 ECMAScript 2015(ECMA-262 第 6 版)中指定。 Nashorn 引擎实现 ECMA-262 版本 5.1)。另见 http://www.ecma-international.org/ecma-262/6.0/#sec-string.prototype.includes

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes有一个 String.prototype.includes 的 polyfill。我检查了 polyfill 是否适用于 Nashorn 引擎。

关于javascript - ScriptEngine JavaScript 不支持包含?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47543566/

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