注意到在Java中找不到async和await,ES7中的这些新关键字是从C#语言复制的吗?我很好奇它的起源:谁提出了关键字名称,JS社区中有人正在利用.NET框架中的概念吗?
答案 0 :(得分:20)
使用承诺(或期货等)的概念正变得越来越流行,但它并不新鲜。例如,您可以在MultiLisp中找到它。
async
和await
关键字最近在C#中使用,现在正在扩展到许多其他语言。
现在有几种主流语言对期货和承诺都有语言支持,最值得推崇的是.NET 4.5中的
async
和await
结构(2010年发布,2012年发布),主要受到异步工作流的启发。 F#,可以追溯到2007年。随后被其他语言采用,特别是Dart(2014),Python(2015),Hack(HHVM)以及ECMAScript 7(JavaScript),Scala和C ++的草稿。
所以是的,JS正在借用C#。