TypeScript为foo
推断() => never
,如果它是不返回的函数表达式的结果:
const foo = function () {
throw new Error();
}
但是void
如果foo
是函数语句:
function foo() {
throw new Error();
}
我不明白。能解释一下就好了。
在文档中找到解释。
"Never是函数表达式或箭头函数表达式的返回类型,它总是抛出异常或从不返回";
如果赋值引发错误,则永远不会分配const foo。