为什么“ noImplicitAny”不适用于函数的返回值?

时间:2019-01-11 07:02:05

标签: typescript

我将'noImplicitAny'的值设置为true。 我认为应该将“ any”应用于函数的返回值,但实际上并非如此。没有发生错误。

noImplicitAny为什么不适用于该函数的返回值?

来自tsconfig.json

{
     "noImplicitAny": true 
}

以下功能不会引发任何noImplicitAny错误。

function abc () {
    return '1'
}

应该是这样吗?

function abc (): any {
    return '1'
}

谢谢。

1 个答案:

答案 0 :(得分:1)

编译器尝试尽可能多地进行推断。 noImplictAny仅在编译器无法推断出某种类型的类型时才会导致错误,并且不会强制您指定所有类型的注释。

在您的情况下,编译器可以轻松地将函数的返回类型推断为number,并且这样做(如果您将鼠标悬停在函数上,则应该将返回视为数字)