在 TypeScript 中,我们经常需要声明函数的参数,并且有时这些参数是可选的,因为并不是每次调用函数时都需要传递完整的参数列表。本文将会介绍如何在 TypeScript 中声明和使用可选参数。
什么是可选参数
可选参数是指可以在函数调用时传递也可以不传递的函数参数。如果函数声明了可选参数,那么它们的值可以为 undefined
,如果函数调用时没有传递该参数,那么该参数的值就会是 undefined
。
如何声明可选参数
在 TypeScript 中,我们可以在标识符后面添加 ?
来声明可选参数。例如:
function test(x: number, y?: number) { // ... }
在上面的示例中,参数 y
是可选的,因此在调用 test
函数时,可以不传入参数 y
,例如:
test(1); // x: 1, y: undefined
还有一种声明可选参数的方式是使用默认参数,例如:
function test(x: number, y: number = 0) { // ... }
在上述示例中,参数 y
使用了默认参数 = 0
,这也使参数 y
成为了可选参数。因此,在调用 test
函数时,可以不传入参数 y
,例如:
test(1); // x: 1, y: 0
如何使用可选参数
在 TypeScript 中,我们可以使用如下方式来使用可选参数:
function test(x: number, y?: number) { if (y !== undefined) { // ... } // ... }
在上面的示例中,我们使用了 y !== undefined
来判断参数 y
是否被传递。如果 y
被传递了,那么在函数体中就可以使用它了。
我们还可以使用默认参数来使用可选参数:
function test(x: number, y: number = 0) { // ... }
在上述示例中,我们使用了默认参数 = 0
。这样就可以保证参数 y
在使用时不会为 undefined
,因此我们就可以在函数体中放心地使用它了。
总结
通过本文,我们了解了 TypeScript 中如何声明和使用可选参数。我们可以在参数标识符后面添加 ?
来声明可选参数,也可以使用默认参数来声明可选参数。同时,在函数体中,我们可以使用 y !== undefined
来判断可选参数是否被传递并使用它,也可以使用默认参数保证可选参数在使用时不会为 undefined
。如果您还不熟悉 TypeScript,可以查看官方文档。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64a00c6c48841e9894c697d4