function

复制代码
// 基础使用和箭头函数
// function add(a:number, b:number):number {
//   return a+b
// }
// const muti = (a:number, b:number):number => a*b

// 参数默认传值、函数可选参数
// const add = (a:number = 10, b?:number):number => {
//   return a
// }

// 参数是对象形式时使用interface
// interface user {
//   name: string,
//   age: number
// }
// const getUser = (user:user):user => {
//   return user
// }
// getUser({name:'gg', age:11})

// 通过this可以获取interface定义的属性
// interface objInterface {
//   arr: number[],
//   cb: (num:number)=> void
// }
// const obj:objInterface = {
//   arr: [1,2],
//   cb(num) {
//     this.arr.push(num)
//   }
// }
// obj.cb(5)

// 函数重载, 做了一个不传参数则返回所有,传数字则查询对应值,传数组则返回拼接数组
const user:number[] = [1,2,3]
function find():number[]
function find(id:number):number[]
function find(arr:number[]):number[]
function find(ids?:number | number[]):number[] {
  if (typeof ids === 'number') {
    return user.filter(item => ids === item)
  } else if (Array.isArray(ids)) {
    return [...user, ...ids]
  } else {
    return user
  }
}
复制代码

 

posted on   ChoZ  阅读(2)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示