【发布时间】:2020-12-22 18:23:23
【问题描述】:
如果 foo 是不返回的函数表达式的结果,TypeScript 会推断出 () => never:
const foo = function () {
throw new Error();
}
但是void如果foo是一个函数语句:
function foo() {
throw new Error();
}
我不明白。有解释就好了。
【问题讨论】:
-
不同的语法不同的行为? ??????♀️虽然很奇怪
-
tldr:向后兼容。如果推断类中的函数返回
never,则子类无法提供返回其他内容的实现。
标签: typescript