TypeScript:这些有关函数的规约和应用,你都掌握了没?

 我来答
黑科技1718
2022-07-02 · TA获得超过5869个赞
知道小有建树答主
回答量:433
采纳率:97%
帮助的人:81.4万
展开全部

本文以代码示例为主,以便让你更高效快捷地理解和掌握TypeScript编程中函数的相关参数要求、应用类型和相应拓展。

我们主要介绍函数的常规化参数、函数式参数、联合类型参数以及函数的类型等。详见下文。若需系统的学习TypeScript编程,请到这里:

可选参数

在TypeScript中,每个参数都被认为是函数所必需的。你可以在参数名称的末尾加一个?将其设置为可选的(即调用是可传参或无参)。

例如下面函数中的lastName参数为可选的:


需要注意,可选参数必须在所有非可选参数之后,如下函数定义,将会提示错误:


默认参数

如果用户传递undefined或未指定参数,则会赋予默认值。这些参数称为默认初始化参数。例如下面,用“Cui”作为默认参数值传给函数使用。


假设我们想要接收一个函数作为参数,我们可以这样做:


如果想接收构造函数作为形参,可按照如下形式实现:

VS Code中,传递构造器参数时,默认情况下会有错误提示。类似

Construct signature, which lacks return-type annotation, implicitly has an 'any' return type 。

此时可修改tsconfig.json配置解决 :"noImplicitAny": false,


或者,为了便于阅读,我们可以定义一个构造函数的描述接口:

或者带有构造参数的形式:


甚至可以带有泛型参数:


如果我们想接收一个简单的函数而不是一个构造函数,这几乎一样操作:


或者为了便于阅读,我们可以定义一个描述函数的接口:

或带参数的函数:

甚至是泛型参数:


TypeScript函数可以使用联合类型接受多个预定义类型的参数。代码示例如下:

TypeScript将这些参数视为其他类型的联合的单一类型(union),所以你的函数必须能够处理联合中的任何类型的参数。示例如下:


有三种函数类型,示例如下:

这里注意参数和返回类型的相应标注形式。若需系统的学习TypeScript编程,请到专栏一探究竟。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式