一些函数式编程语言提供了内联" between "参数调用函数的能力。我不知道这个功能的正确术语(如果我知道,我可以做一个更好的搜索:D),但希望下面是清楚的…
假设我定义了一个'add'函数:
const add = (a,b) => a+b;
由于超出这个问题范围的原因(我不是在这里讨论编码风格,这里有一个合法的用例,我保证),我希望能够像这样调用这个函数:
const result = 1 add 3;
对于我明显比上面更复杂的情况,这个语法糖将非常美味。能用打字稿吗?在某些语言中允许的上述行为的正确术语/名称是什么?
这个术语是'中缀函数',不,这在TS中基本上是不可能的。
Typescript是Javascript之上的一个非常薄的层:除了少数例外,它只支持Javascript支持的语法以及类型注释。
Javascript没有中缀函数,所以Typescript也没有。
唯一可行的方法是使用TS转换器,它本质上是编写一个自定义转译器插件,将代码转换为正常的Typescript语法。
但是这些都是脆弱的,并没有得到很好的支持,所以我个人不建议将其用于像这样的语法糖用例。