【发布时间】:2016-06-11 01:17:26
【问题描述】:
似乎编译器/解析器应该足够聪明,可以检测函数是否使用await,然后它会自动变成async 函数。
为什么我必须输入async 关键字?它增加了混乱,很多时候我忘记添加它,我得到一个错误,然后我必须去添加它。
让编译器在看到await 时自动将函数提升为async 并省去大家处理它的麻烦会有什么缺点吗?
【问题讨论】:
-
您有时忘记添加它的事实应该是足够的理由。如果您正在编写代码而忘记添加它,那么其他人还有什么希望弄清楚发生了什么?
-
谢谢。为了更具体,我在标题中添加了 ES7。虽然不是 Javascript 本身的要求,但我认为几乎每个主要的 Javascript 实现最终都会编译为本机代码。至少对于热门的部分。
-
如果没有明确定义异步函数,读者怎么会发现它是异步的?您不希望读者阅读函数的所有主体来找到“等待”以确保它是异步的。
-
ES7 已经完成。
async/await不是 ES7 的一部分。
标签: javascript async-await language-design