8

TypeScript 的文档带有Compiler Options,其中--strictFunctionTypes定义了它的描述。不幸的是,无法得到什么是双变量参数。我也试图理解https://github.com/Microsoft/TypeScript/wiki/FAQ#why-are-function-parameters-bivariant

4

1 回答 1

6

“双变量”参数是既是协变的又是逆变的。

TypeScript 2.6 发行说明很好地描述了--strictFunctionTypes编译器选项,因为这是第一个支持它的版本。

在 --strictFunctionTypes 下,函数类型参数位置以逆变方式而不是双变量方式进行检查。有关方差对函数类型意味着什么的背景知识,请查看什么是协方差和逆变?。

该引用中链接的这篇文章描述了协方差和逆变之间的区别: https ://www.stephanboyer.com/post/132/what-are-covariance-and-contravariance

于 2019-08-14T17:45:04.257 回答