许多编程语言都有异步功能的概念。异步函数的返回值本身不是必需的类型,而是最终将包含该值的promise / future。
我正在做技术写作,我在努力为异步返回值的行为提出一个简洁的术语。考虑以下同步功能:
function foo(): boolean { ... }
在这里,我写“如果foo
返回true
,...” 这是完全可以理解的。
现在考虑此异步函数:
function bar(): Promise<boolean> { ... }
我可以这样写:“如果bar
返回的诺言解析为true
,...” 从技术上讲这是正确的,但是比较尴尬,特别是如果反复使用
我可以这样写:“如果bar
异步返回true
,...” 这比较短,但是我对此不太满意。对我来说,它强调的是“异步”,而不是“ true
”。
我可以这样写:“如果bar
返回true
,...” 这很短,但从技术上讲是不正确的。
我想写一些类似的东西:“如果bar
产生true
,...” ,但是yield的动词在上下文中已经具有不同的含义(至少在某些语言中)。
表达这个概念是否有简洁的方法?
答案 0 :(得分:1)
我认为 yield (或它的同义词 produce )完全可以。从上下文中应该清楚,承诺是意味着。不清楚时,我将使用冗长且技术上准确的版本(返回承诺,并用实现)。
当bar()
解析为true
时,另一种选择是,省略了隐式的“呼叫返回的承诺”,而是使用bar()
而不是{{ 1}}来引用调用的结果,而不是函数本身(这不是可以解决的承诺)。