当前位置: 首页 > article >正文

前端 TS 快速入门之四:函数

1. 为函数定义类型

一般使用中,我们可以不必完整写出函数类型,因为 TypeScript 会为我们自动推断出类型。

// 书写完成函数类型
let sum: (num1: number, num2: number) => number;
sum = function(num1, num2) {
    return num1 + num2
}
sum(1,2) // 3

 2. 可选参数

参数名后面接 ?,就是可选参数。注意:可选参数必须跟在必须参数后面

let square: (x: number, y: number, s?: number) => number;
square = function(width: number, height: number, scale?: number): number {
  if (scale) {
    return width * height * scale;
  } else {
    return width * height;
  }
};
square(5, 6); // 30
square(5, 6, 2); // 60

 3. 默认参数

使用 = 给参数赋默认值。

没有给参数传值或传 undefined 时,参数的值就是默认值。

在所有的必须参数后带默认值的参数都是可选的。

有默认值的参数不一定放在必须参数后面,也可以放在前面,当传 undefined 的时,就取默认值。

function square(width = 6, height = 6, scale: number, cut = 10): number {
  return width * height * scale - cut;
}
square(5, undefined, 2); // 5 * 6 * 2 - 10 = 50

4. 剩余参数

function max(a: number, b: number, ...resArr: number[]): number {
  return Math.max(a, b, ...resArr);
}
max(10, 5, 6, 100, 200); // 200

上一章:前端 TS 快速入门之三:class 类

下一章:前端 TS 快速入门之五:泛型 T


http://www.kler.cn/a/106510.html

相关文章:

  • Vuex vs Pinia:新一代Vue状态管理方案对比
  • Excel使用-弹窗“此工作簿包含到一个或多个可能不安全的外部源的链接”的发生与处理
  • Gitcode文件历史记录查看和还原
  • 动态内存管理(c语言)
  • 11.08-10.14谷粒商城
  • 『VUE』27. 透传属性与inheritAttrs(详细图文注释)
  • Oracle数据库基础
  • shell的执行流控制
  • 电脑msvcp100.dll丢失了怎么办?详细的5个修复方法
  • 【代码随想录】算法训练计划03
  • Centos7 安装和配置 Redis 5 教程
  • 视频相关学习笔记
  • 云台/稳定器/无人机姿态控制之欧拉角与四元数控制优缺点分析
  • 记一次任意文件下载到Getshell
  • 文件权限详解
  • 【Linux】部署单机OA项目及搭建spa前后端分离项目
  • 【软考系统架构设计师】2023年系统架构师冲刺模拟习题之《数据库系统》
  • Leetcode—66.加一【简单】
  • JSON(详解)
  • JVM进阶(2)
  • ESP32网络开发实例-HTTP-GET请求
  • 常规APP在客户端层面潜在应用安全问题探讨
  • MySQL比较两个表数据的差异
  • Onnx精度转换 FP32->FP16
  • 全栈经验总结(不间断更新)
  • vite vue3 ts 使用sass 设置样式变量 和重置默认样式