3

每当我尝试以这种方式在对象内定义异步函数时,它都会引发语法错误。

let obj = {
  fn: async function fn() {
    return 10;
  }
}
4

1 回答 1

6

您发布的代码在语法上是正确的。如果您遇到语法错误,那么您尝试运行代码的环境不支持异步函数(鉴于此功能尚未正式发布,这并不奇怪)。

解决方案:

  • 不要使用异步函数(直接使用 Promise)
  • 在使用Babel之类的东西执行之前转换你的代码。

关于哪个环境支持异步函数的信息可以在https://kangax.github.io/compat-table/es2016plus/#test-async_functions找到。

于 2017-05-03T20:44:37.680 回答