我很高兴EcmaScript 6有内置于语言中的承诺,但是语法仍然很冗长:
new Promise(f).then(r => {
...
}).then(r2 =>
...
}).catch(...我只是想知道是否有任何语言有语法上的承诺,所以结果看起来更像传统的命令式编程。也许假设是这样的:
fetch f {
get r
...
get r2
...
catch
...
}发布于 2015-10-16 08:52:26
是的,有几种这样的语言:
async方法和await关键字。从技术上讲,实现某种句法模式的任何对象都可以await编辑,但意图是将这种语法用于异步编程,框架中唯一实现语法模式的对象是Task<T>对象,它们是未来/承诺(取决于您对“未来”和“承诺”的确切定义,它们可能是未来、承诺,两者都不是)。async/await的灵感所在。async / awaitasync/awaitresumable/awaithttps://softwareengineering.stackexchange.com/questions/300014
复制相似问题