欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > 函数类型声明

函数类型声明

2025/4/3 13:27:08 来源:https://blog.csdn.net/wsfufua/article/details/146915974  浏览:    关键词:函数类型声明

数据类型指定

// 普通函数声明
function add(n1:number,n2:number):number {return n1 + n2;
}
//箭头函数声明
const formatTen = (n1:number):number=>n1*10

函数默认值

注意函数默认值与可选形参冲突二者之可选其一

// 普通函数声明
function add(n1:number=10,n2:number=10):number {return n1 + n2;
}
//箭头函数声明
const formatTen = (n1:number=10):number=>n1*10

函数可选形参

注意可选形参与函数默认值冲突二者之可选其一

// 普通函数声明
function add(n1?:number=,n2?:number):number {return n1 + n2;
}
//箭头函数声明
const formatTen = (n1?:number):number=>n1*10

对象数据类型形参声明

interface man{age:number
}// 普通函数声明
function add(m1:man,m2:man):number {return m1.age + m2.age;
}
//箭头函数声明
const formatTen = (m1:man,):number=>m1.age>18?m1.age:18

函数中定义this的类型

第一个参数可以指定this的数据类型

interface Obj{age:number,add:(this:Obj)=>void
}
let obj:Obj = {age:17,add(this:Obj){this.age++;}
}

函数重载

let user:number[] =[1,2,3]
function fn(add:number[]):number[] // 新增
function fn(id:number):number[]// 查询
function fn():number[] // 查询全部
function fn(ids?:number|number[]):number[]{if (typeof ids==='number'){return user.filter(n=>n===ids)}else if (Array.isArray(ids)){user.push(...ids)return user}else{return user}
}console.log(fn([5,4,5,67,8,7,9,8]))// 新增
console.log(fn(548))// 查询单个
console.log(fn())// 查询全部

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词