我将'noImplicitAny'的值设置为true。 我认为应该将“ any”应用于函数的返回值,但实际上并非如此。没有发生错误。
noImplicitAny
为什么不适用于该函数的返回值?
来自tsconfig.json
:
{
"noImplicitAny": true
}
以下功能不会引发任何noImplicitAny
错误。
function abc () {
return '1'
}
应该是这样吗?
function abc (): any {
return '1'
}
谢谢。
答案 0 :(得分:1)
编译器尝试尽可能多地进行推断。 noImplictAny
仅在编译器无法推断出某种类型的类型时才会导致错误,并且不会强制您指定所有类型的注释。
在您的情况下,编译器可以轻松地将函数的返回类型推断为number
,并且这样做(如果您将鼠标悬停在函数上,则应该将返回视为数字)