18

注意到在 Java 中找不到 async 和 await,ES7 中的这些新关键字是从 C# 语言复制而来的?我很好奇起源:谁提出了关键字名称,JS 社区中是否有人正在利用 .NET 框架中的概念?

4

1 回答 1

28

使用承诺(或期货等)的概念变得越来越流行,但它并不新鲜。例如,您可以在 MultiLisp 中找到它。

然而, asyncandawait关键字最近在 C# 中使用,现在正在传播到许多其他语言中。

几种主流语言现在都支持 futures 和 promises,最显着的是由 .NET 4.5(2010 年发布,2012 年发布)中的asyncandawait结构普及,很大程度上受到 F# 的异步工作流的启发,该工作流可以追溯到 2007 年。这随后被其他语言,特别是 Dart (2014)、Python (2015)、Hack (HHVM) 以及 ECMAScript 7 (JavaScript)、Scala 和 C++ 的草稿。

所以是的,JS 是从 C# 借来的。

来自期货和承诺#History

于 2015-12-10T16:29:33.173 回答