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
相关推荐
空中海1 分钟前
03 性能、动画与 React Native 新架构
react native·react.js·架构
好运的阿财23 分钟前
OpenClaw工具拆解之host_workspace_write+host_workspace_edit
前端·javascript·人工智能·机器学习·ai编程·openclaw·openclaw工具
XiYang-DING36 分钟前
JavaScript
开发语言·javascript·ecmascript
ffqws_1 小时前
Spring Boot 接收前端请求的四种参数方式
前端·spring boot·后端
空中海1 小时前
02 React Native状态、导航、数据流与设备能力
javascript·react native·react.js
是安迪吖2 小时前
企业资产管理系统练习
前端·ai
zhouwy1132 小时前
AI 编程工具结合 Figma MCP 实现前端设计高保真还原
前端·人工智能·figma
kyriewen2 小时前
WebAssembly:前端界的“外挂”,让C++代码在浏览器里跑起来
前端·c++·webassembly
悟空和大王2 小时前
核心 SDK 详细设计文档 (Visual-Render-SDK)
前端
空中海2 小时前
02 状态、Hooks、副作用与数据流
开发语言·javascript·ecmascript