【005】ts学习笔记【函数扩展】

函数扩展

参数类型

js 复制代码
//注意,参数不能多传,也不能少传 必须按照约定的类型来
const fn = (name: string , age : number ) : string => {
    return name + age
}

let desc = fn( "张三", 18)
console.log(desc)

可选参数与默认值

js 复制代码
//可选的参数 和 默认参数
const fn_002 = (name: string = "tom" , age? : number ) : string => {
    return name + age
}

let desc_002 = fn_002( )
console.log(desc_002)

接口定义函数

js 复制代码
interface Add {
    //定义参数 num 和 num2  :后面定义返回值的类型
    ( num : number , num2 : number ) : number
}

const fn_add : Add = (num : number , num2 : number ) : number =>{
    return num + num2 
}
fn_add( 5 , 5)

interface User {
    name : string,
    age ?: number 
}
function getUserInfo(user : User) : User {
    return user
}
let u001 = getUserInfo({
    name : "五十" ,
    age : 18
})
console.log(u001)

定义剩余参数

js 复制代码
const fn_003 = (array : number[] , ...items : any[] ) : any[] =>{
    console.log( "剩余参数", items )
    return items
}
let num_list : number[] = [1,2,3]
fn_003( num_list, 4 , 5 , 6 )

函数重载

定义

函数重载是指在 TypeScript 中定义多个具有相同名称但参数类型或参数数量不同的函数声明。

函数重载规则

  • 1, 多个函数定义使用相同的函数名称

  • 2, 函数参数的数量或类型必须有区别

  • 3,如果参数类型不同, 则参数类型应设置为 any

  • 4,返回类型可以相同也可以不同。

作用

通过使用函数重载,可以为同一个函数提供多个不同的函数签名,从而提供更严格的类型检查和更清晰的函数使用方式。

常见报错

相关推荐
xiaotao1312 小时前
02-机器学习基础: 监督学习——线性回归
学习·机器学习·线性回归
这儿有一堆花2 小时前
前端三件套真的落后了吗?揭开现代 Web 开发的底层逻辑
前端·javascript·css·html5
墨黎芜3 小时前
ArcGIS从入门到精通——地图符号、注记的初步使用
学习·arcgis·信息可视化
小李云雾3 小时前
FastAPI重要知识点---中间件(Middleware)
学习·程序人生·中间件·fastapi·middleware
.Cnn3 小时前
JavaScript 前端基础笔记(网页交互核心)
前端·javascript·笔记·交互
小夏子_riotous3 小时前
Docker学习路径——3、常用命令
linux·运维·服务器·学习·docker·容器·centos
醉酒的李白、3 小时前
Vue3 组件通信本质:Props 下发,Emits 回传
前端·javascript·vue.js
STLearner4 小时前
WSDM 2026 | 时间序列(Time Series)论文总结【预测,表示学习,因果】
大数据·论文阅读·人工智能·深度学习·学习·机器学习·数据挖掘
redaijufeng4 小时前
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
爬虫·学习·selenium
九成宫4 小时前
IT项目管理期末复习——Chapter 10 项目沟通管理
笔记·项目管理·软件工程