当前位置: 首页 > 面试题库 >

在没有async关键字的情况下在全局范围内使用await

方承弼
2023-03-14
问题内容

我正在尝试在nodejs REPL的 全局范围内
执行类似的操作。根据我的理解,以下两个陈述均有效。查看文件

let x = await Promise.resolve(2);
let y = await 2;

但是,这两个语句都引发错误。

有人可以解释为什么吗?我的节点版本是v8.9.4


问题答案:

await只能在标记为的函数中使用async,因此有两种方法可以实现。

注意: 有一个建议书可能最终允许使用顶级等待呼叫。

第一种方法是创建一个如下所示的自调用函数:

(async function() {

  let x = await Promise.resolve(2)

  let y = await 2



  console.log(x, y)

})()

或第二种方法是使用 .then()

Promise.resolve(2).then(async data => {

  let x = data

  let y = await 2



  console.log(x, y)

})


 类似资料:
  • 我看到的所有解决方案都需要使用。但是,我想在Eclipse之外的单个文件上使用CDT解析器。那有什么办法吗?

  • 在Java中,是否可以编写一个switch语句,其中每个大小写包含多个值?例如(尽管下面的代码显然不起作用): 我认为目标C可以这样做,Java是否也有类似的事情?还是只使用、语句?

  • 问题内容: 为了掌握AngularJS,我决定使用其中一个示例,特别是在Todo示例中简单地添加一个“ complete”屏幕,当用户输入5个todo时,它会使用一个切换案例切换到另一个div。 。如果有任何用处,可以在这里找到代码http://jsfiddle.net/FWCHU/1/。 但是,似乎每个开关盒都有其自己的作用域($ scope.todoText不可用),但是在这种情况下,可以使用

  • 我正在尝试使用selenium创建自动化,以安装chrome扩展。当我尝试在amazon虚拟机上运行这个jar时,我遇到了一个问题,因为当我尝试用robot类按enter键时,它不起作用,因为我没有连接物理键盘。我不能在selenium中使用sendkeys,因为来自google的pop不在同一页面,selenium无法识别它。有什么解决办法吗?

  • 我仍然在考虑Kotlin中的coroutines,但我想知道这是否对我的问题有些矫枉过正,即在返回数据时立即更新文本视图。异常处理使回调变得非常丑陋,我想尽可能避免这些 suspend关键字是否仅仅意味着运行库可能会挂起一个需要一段时间才能完成的函数?还是只在coroutine内启用挂起?作为一个假设,我能写吗 是否知道,如果下载了1 GB的数据,将同时调用,而则等待由填充?

  • 问题内容: 我从Vaadin开始,我想知道在不使用maven的情况下在NetBeans中使用此框架是否可行。原因是使用maven的项目需要很长时间才能下载依赖项,并且由于超时连接问题而无法运行。 我已经下载了“多合一”文件,并尝试按照这些README.txt文件的说明进行操作: 将除vaadin-client和vaadin-client-compiler以外的所有vaadin- *文件复制到项目中