无法从 nashorn java 调用脚本的异步函数 java
Cannot call javascript's async functions from nashorn java
我想使用 nashorn
从 java 调用如下的 javascript 函数
async function testSample() {
for (var i = 0; i < sample.length; i++) {
await sample[i]();
}
}
因此它将执行示例变量l中的所有函数。但是我收到以下错误
Expected ; but found function
async function testSample()() {
^ in <eval> at line number 8 at column number 6
nashorn 是否支持异步函数?
是否有解决此问题的方法?
async
在 ECMAScript 2017 中定义; Nashorn 目前只支持 ECMAScript 5.1。
因此,您不能直接从Nashorn 调用此代码。你可以尝试使用 Promise
s 重写它,或者用 babel 之类的东西将它编译成 ES5。
我想使用 nashorn
从 java 调用如下的 javascript 函数async function testSample() {
for (var i = 0; i < sample.length; i++) {
await sample[i]();
}
}
因此它将执行示例变量l中的所有函数。但是我收到以下错误
Expected ; but found function
async function testSample()() {
^ in <eval> at line number 8 at column number 6
nashorn 是否支持异步函数?
是否有解决此问题的方法?
async
在 ECMAScript 2017 中定义; Nashorn 目前只支持 ECMAScript 5.1。
因此,您不能直接从Nashorn 调用此代码。你可以尝试使用 Promise
s 重写它,或者用 babel 之类的东西将它编译成 ES5。