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 2025-02-12 15:57  ChoZ  阅读(8)  评论(0)    收藏  举报

导航