TypeScript 第七节:函数

TypeScript 是一种强类型的编程语言,与 JavaScript 相比,它具有一些额外的功能,特别是在函数方面。

一、TypeScript 函数的常见功能:

1、定义函数类型 可以使用类型注释来定义参数和返回值的类型。

例如:

TypeScript 复制代码
function add(x: number, y: number): number {
  return x + y;
}

其中,xy 的类型都是数字,返回值的类型也是数字。

2、可选参数和默认参数 在 TypeScript 中,可以使用问号 (?) 将参数标记为可选参数,也可以使用 = 指定默认参数。

例如:

TypeScript 复制代码
function greet(name?: string, msg: string = "Hello") {
  if (name) {
    console.log(`${msg}, ${name}!`);
  } else {
    console.log(`${msg}!`);
  }
}

这个函数接受两个参数:一个可选的名字,以及一个默认的消息。如果提供了名字,它将使用它来打招呼,否则它将只说默认的消息。

3、剩余参数 可以使用 ... 来指明剩余的参数。

例如:

TypeScript 复制代码
function sum(...numbers: number[]) {
  return numbers.reduce((acc, val) => acc + val, 0);
}

这个函数接受任意数量的数字参数,并返回它们的总和。

4、函数重载 TypeScript 支持函数重载,即在一个函数名称下定义多个函数签名。

例如:

TypeScript 复制代码
function concat(x: string, y: string): string;
function concat(x: number, y: number): number;
function concat(x: any, y: any): any {
  return x + y;
}

这个函数可以接受两个字符串或两个数字,并返回它们的组合。如果传递的参数不是字符串或数字,则返回的类型将是 any

相关推荐
IT_陈寒4 小时前
Vue的响应式让我熬到凌晨三点,原来漏了这个小细节
前端·人工智能·后端
Blanche15004 小时前
利用 RAG 为答疑机器人扩展知识范围
前端
天若有情6734 小时前
【纯前端小工具】公历生日转农历,批量查询每年农历生日对应的公历日期(GitHub Pages在线直接用)
前端·javascript·github pages·农历转换·lunisolar·网页小工具
SoonITer4 小时前
怎样构建一个 Agent-friendly 的网站
前端·agent
颜进强4 小时前
01 · NestJS 是什么:用途、解决什么问题、与热门框架对比
前端·后端·ai编程
wendZzoo4 小时前
前端工程师的 3D 第一课:一个模型如何进入网页
前端
颜进强5 小时前
04 · NestJS 依赖注入:你在 `@Module` 写的 providers,和构造参数里那个类型,是怎么"对上"的?
前端·后端·ai编程
肆仲冬5 小时前
不用框架,用 TypeScript 从零搭一个 Agent 框架
前端
林语琛5 小时前
我写的 switch…break 被 Babel 偷偷吞了
前端·javascript·babel
烈风逍遥5 小时前
第六篇:RAG 知识库构建与检索全链路
前端·人工智能·后端