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

相关推荐
雪碧聊技术8 小时前
前端项目代码发生改变,如何重新部署到linux服务器?
前端·vue3·centos7·代码更新,重新部署
liulilittle9 小时前
C++ 浮点数封装。
linux·服务器·开发语言·前端·网络·数据库·c++
wordbaby9 小时前
Expo 进阶指南:赋予 TanStack Query “原生感知力” —— 深度解析 AppState 与 NetInfo
前端·react native
Moment9 小时前
从美团全栈化看 AI 冲击:前端转全栈,是自救还是必然 🤔🤔🤔
前端·后端·面试
天问一9 小时前
使用 Vue Router 进行路由定制和调用的示例
前端·javascript·vue.js
韩立学长11 小时前
【开题答辩实录分享】以《基于Vue的非遗文化知识分享平台的设计与实现》为例进行选题答辩实录分享
前端·javascript·vue.js
优弧11 小时前
离开舒适区100天,我后悔了吗?
前端·后端·面试
胡gh11 小时前
css的臂膀,前端动效的利器,还是布局的“隐形陷阱”?
前端·css·html
灵感菇_11 小时前
Flutter Riverpod 完整教程:从入门到实战
前端·flutter·ui·状态管理
用户214118326360211 小时前
紧急修复!Dify CVE-2025-55182 高危漏洞,手把手教你升级避坑
前端