跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

TypeScript函数参数:如何优雅地设置对象类型参数的默认值?

TypeScript函数参数默认值设置与解构赋值 在TypeScript中编写JavaScript函数时,为函数参数设置默认值非常常见。本文重点讲解如何利用解构赋值优雅地为包含对象类型参数的函数设置默认值。 问题:对象类型参数默认值设置 假设我们有一个
options
类型,其中
dir
属性需要默认值:
type options = { dir: string; style?: boolean; };
直接使用
{}
作为默认值是无效的:
function test(options: options = {}) {} // 错误:dir属性缺失
解决方案:解构赋值 利用解构赋值,我们可以直接在参数中为
dir
设置默认值: TypeScript-45分钟入门课件源码 TypeScript-45分钟入门课件源码 下载
function test({ dir = 'defaultValue', style }: options = { dir: 'defaultValue' }) { console.log({ dir, style }); }
此方法通过解构赋值接收
options
对象,并为
dir
属性设置默认值
'defaultValue'
。若调用
test
函数时未提供
dir
,则使用默认值。
style
属性为可选属性,可省略。
options = { dir: 'defaultValue' }
确保即使无参数传入,
dir
也有默认值。 另一种简洁方法 更简洁的实现方式是直接在函数参数中赋值默认值:
function test(ResolverOptions: options = { dir: 'defaultValue' }) { console.log(ResolverOptions); }
此方法直接为
ResolverOptions
参数赋予包含
dir
默认值的对象。代码更简洁易懂,若无参数传入,则使用提供的默认值。 两种方法都能有效地为对象类型参数设置默认值,选择哪种方法取决于个人偏好和代码风格。 解构赋值方式更清晰地展现了对属性的处理,而直接赋值方式则更简洁。

相关文章