Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';不能让异步函数在简单的NodeJS脚本中工作_Javascript_Node.js_Async Await - Fatal编程技术网

Javascript Can';不能让异步函数在简单的NodeJS脚本中工作

Javascript Can';不能让异步函数在简单的NodeJS脚本中工作,javascript,node.js,async-await,Javascript,Node.js,Async Await,所以,Nodej是这里的新手-请温柔一点 以下代码在现代浏览器中运行良好: async function testAsync(){ return await new Promise(function(resolve){ setTimeout(function(){ resolve('Hello World!'); }, 1000) }) } const test = await testAsync(); console.

所以,Nodej是这里的新手-请温柔一点

以下代码在现代浏览器中运行良好:

async function testAsync(){
    return await new Promise(function(resolve){
        setTimeout(function(){
            resolve('Hello World!');
        }, 1000)

    })
}

const test = await testAsync();
console.log(test);
它等待1000毫秒,直到像预期的那样将“Hello World!”打印到控制台

使用我得到的相同代码运行Node 10.3.0:

SyntaxError: await is only valid in async function
我错过了什么


谢谢

您不能像使用
await testAsync()一样在顶层等待
wait
。相反,请使用
。然后使用

testAsync()
  .then(test => console.log(test));
另外,使用
async
函数立即返回
wait
ed承诺也没有多大意义;相反,只要回报承诺:

函数testAsync(){
返回新承诺(函数(解析){
setTimeout(函数(){
决心(“你好,世界!”);
}, 1000)
});
}
testAsync()

.then(test=>console.log(test))将调用包装在自调用异步函数中
void async function(){const test=wait testAsync();console.log(test);}()(或使用返回的承诺)