Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 如何强制函数返回给定类型的值?_Typescript - Fatal编程技术网

Typescript 如何强制函数返回给定类型的值?

Typescript 如何强制函数返回给定类型的值?,typescript,Typescript,也许有一个tsconfig选项来设置这个,但是如果我写一些 function codeToMsg(a: number): string { if (a == 200) return "OK"; } let msg = codeToMsg(123456); 我没有从编译器那里得到一个错误,即函数可能不会返回字符串类型的值(现在返回的是未定义的值)。如何实施这一点?一个选项是使用“noImplicitReturns”:true。如果不是所有代码路径都返回值,则会发出警告

也许有一个tsconfig选项来设置这个,但是如果我写一些

function codeToMsg(a: number): string {
    if (a == 200)
        return "OK";
}

let msg = codeToMsg(123456);

我没有从编译器那里得到一个错误,即函数可能不会返回字符串类型的值(现在返回的是未定义的值)。如何实施这一点?

一个选项是使用
“noImplicitReturns”:true
。如果不是所有代码路径都返回值,则会发出警告


另一个选项是使用
strictNullCheck
,这将导致函数报告错误,但这会带来许多其他您可能不想要的行为。

一个选项是使用
“noImplicitReturns”:true
。如果不是所有代码路径都返回值,则会发出警告


另一个选项是使用
stricnullcheck
,这将导致函数报告错误,但是,这还伴随着一系列您可能不想要的其他行为。

打开
strictNullChecks
noImplicitReturns
编译器选项以使其成为错误

打开
strictNullChecks
noImplicitReturns
编译器选项以使其成为错误错误

可能重复,但我认为编译器不可能。我说的是标准tsc配置。tslint是另一个可能的动物复制品,但我认为它不可能与编译器兼容。我说的是标准tsc配置。特斯林是另一种动物