可选和默认参数

可选参数

在 TypeScript 中,假定函数需要每个参数。你可以添加一个**?**在参数名称的末尾将其设置为可选。

例如,此函数的 lastName 参数是可选的:

function buildName(firstName: string, lastName?: string) {
    // ...
}

可选参数必须在所有非可选参数之后:

function buildName(firstName?: string, lastName: string) // Invalid

默认参数

如果用户通过 undefined 或未指定参数,则将分配默认值。这些称为默认初始化参数。

例如,SmithlastName 参数的默认值。

function buildName(firstName: string, lastName = "Smith") {
    // ...
}
buildName('foo', 'bar');      // firstName == 'foo', lastName == 'bar'
buildName('foo');             // firstName == 'foo', lastName == 'Smith'
buildName('foo', undefined);  // firstName == 'foo', lastName == 'Smith'