TypeScript快速入门 - 函数的使用

1、有名函数和匿名函数

javascript 复制代码
// 有名函数,形参设置为number类型,返回值也为number类型
function add(x: number, y: number): number {
  return x + y;
}
console.log(add(1, 2)); // 3

//匿名函数,形参设置为number类型,返回值也为number类型
let myAdd = function (x: number, y: number): number {
  return x + y;
}
console.log(myAdd(2, 2)); // 4

2、函数的可选参数

参数名旁使用(?)实现可选参数功能,例如,函数中y参数可选。

javascript 复制代码
function add(x: number, y?: number): number {
  if (y) {
    return x + y;
  } else {
    return x;
  }
}

console.log(add(1)); // 1
console.log(add(1, 2)); // 3

3、函数的剩余参数

使用(...)定义, 剩余参数会被当作个数不限的可选参数。可以一个都没有,也可以有任意个。

javascript 复制代码
function add(x: number, ...y: number[]): number {
  if (y.length) {
    let sum = x;
    for (let i = 0; i < y.length; i++) {
      sum += y[i];

    }
    return sum;
  } else {
    return x;
  }
}

console.log(add(1)); // 1
console.log(add(1, 2, 3, 4, 5)); // 15

4、箭头函数

javascript 复制代码
const add = (x: number, ...y: number[]): number => {
  if (y.length) {
    let sum = x;
    for (let i = 0; i < y.length; i++) {
      sum += y[i];

    }
    return sum;
  } else {
    return x;
  }
}

console.log(add(1)); // 1
console.log(add(1, 2, 3, 4, 5)); // 15
相关推荐
鹏北海5 分钟前
Qiankun 微前端实战踩坑历程
前端·架构
前端一课31 分钟前
OpenClaw 项目全面架构分析报告
前端·人工智能
HelloReader44 分钟前
Tauri 的 Capabilities 权限管理系统
前端
喵爱吃鱼1 小时前
关于我明明用了ref还是陷入React闭包陷阱
前端·react.js
an317421 小时前
解决 VSCode 中 ESLint 格式化不生效问题:新手也能看懂的配置指南
前端·javascript·vue.js
Lee川3 小时前
🚀《JavaScript 灵魂深处:从 V8 引擎的“双轨并行”看执行上下文的演进之路》
javascript·面试
汪汪队长3 小时前
谷歌浏览器自定义油猴插件
前端
ZFSS3 小时前
SeeDance Tasks API 的对接和使用
前端·人工智能
睿智的仓鼠3 小时前
🦞OpenClaw 快速部署及使用指南
前端·人工智能
前端付豪3 小时前
Nest 项目小实践之图书增删改查
前端·node.js·nestjs