函数重载

如果想要TypeScript实现一个加法函数,它可以实现字符串的拼接和数字相加。

当然,用JS实现非常简单,因为JS不关心你的类型,但是用TS实现就稍微复杂一点了。

法一:利用联合类型+类型判断

function add(num1: string | number, num2: string | number) {if (typeof num1 === 'number' && typeof num2 === 'number') {return num1 + num2;} else if (typeof num1 === 'string' && typeof num2 === 'string') {return num1 + num2;}
}

缺点:
①需要进行多次条件判断
②函数的返回值类型依旧不确定

法二:使用TS特有的(指JS没有)函数重载功能
函数的重载:函数名称相同,但是参数的个数或者类型不同。

// 函数的定义
function add(num1: number, num2: number): number;
function add(num1: string, num2: string): string;// 函数的实现
function add(num1: any, num2: any): any {return num1 + num2;
}

但是如果通过联合类型能更加简单的实现函数功能的时候,应该使用联合类型。

// 联合类型
function getLength(args:string | any[]){return args.length;
}// 函数重载
function getLength2(args:string):number;
function getLength2(args:any[]):number;function getLength2(args:any):any{return args.length
}

TypeScript 函数重载相关推荐

  1. TypeScript - 函数

    前言 本文主要记录下 TypeScript 中的函数,日常学习总结篇. 在 JavaScript 中,函数是构建应用的一块基石,我们可以使用函数抽离可复用的逻辑.抽象模型.封装过程.在 TypeScr ...

  2. typescript函数和类的基础

    目录 函数 函数的基本使用 函数参数的使用 构造函数 函数重载 类 类的基本使用 类的继承 static与instanceof 修饰符 getter与setter 抽象类 初始化 函数 函数的基本使用 ...

  3. TypeScript 函数以及简单使用和操作

    TypeScript 函数 一.常规函数定义和函数调用方式 二.带参数函数定义和调用方式 三.匿名函数定义和调用方式 四.构造函数定义和调用方式 五.递归函数定义和调用方式 六.箭头函数定义和调用方式 ...

  4. Typescript函数和类的使用

    一.函数的基本使用 函数是Javascript应用程序的基础.可以实现抽象层.模拟类.信息隐藏和模块.在Typescript里,虽然已经支持类.命名空间和模块,但函数仍然是主要的定义行为的地方.Typ ...

  5. TypeScript函数和类

    函数介绍 函数是JavaScript应用程序的基础.它帮助你实现抽象层,模拟类,信息隐藏和模块.在TypeScript里,虽然已经支持类,命名空间和模块,但函数仍然是主要的定义行为的地方.TypeSc ...

  6. TypeScript 函数与以及类的使用

    一.函数 1.函数的基本使用 介绍 函数是JavaScript应用程序的基础.它帮助你实现抽象层,模拟类,信息隐藏和模块.在TypeScript里,虽然已经支持类,命名空间和模块,但函数仍然是主要的定 ...

  7. TypeScript函数与类的使用基础知识点

    1.类的使用 1.1 类的基本使用 定义:TypeScript 是面向对象的JavaScript.                              类描述了所创建的对象共同的属性和方法.   ...

  8. 3、TypeScript 函数

    目录 1. 函数的基本使用 2. 函数参数的处理 3. 构造函数 4. 函数重载 参数类型不同: 参数类型不同: 1. 函数的基本使用 介绍 函数是JavaScript应用程序的基础.它帮助你实现抽象 ...

  9. C++ 笔记(13)— 函数(函数声明、函数定义、函数调用[传值、指针、引用]、函数参数默认值、函数重载)

    每个 C++ 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数. 1. 函数声明 函数声明告诉编译器函数的名称.返回类型和参数.函数声明包括以下几个部分: ret ...

最新文章

  1. 给嵌入式工程师的一封信
  2. 你需要知道的Linux 系统下外设时钟管理
  3. java system sleep_详解Java中的sleep()和wait()的区别
  4. ACM Fellow发文抨击【同行评审】作弊轻松中顶会
  5. 【Java数据结构与算法】第十五章 B树、B+树和B*树
  6. linux的实际作用是什么,libcxxabi在linux下有意义吗?有什么好处?
  7. 算法和数据结构~Sqlserver索引使用的B树
  8. Python 算法交易实验30 退而结网7-交易策略思考
  9. linux libaio介绍
  10. Linux 环境下,搭建 ZooKeeper 集群
  11. 图片转为PDF怎么弄
  12. 什么是GPU服务器?如何正确选择?
  13. win10解决cmd无法切换盘符的问题
  14. 【统计分析系统--SAS介绍】
  15. 波动率曲面(完整版)
  16. fs.readFileSync 引入路径错误
  17. 2022年全国最新消防设施操作员(初级消防设施操作员)题库及答案
  18. JavaScript创始人Brendan Eich访谈录(转)
  19. 谷歌广告联盟怎么收款?推荐使用招商银行电汇秒到账
  20. 高尔夫热潮四月优雅袭卷鹏城,深圳值得期待的运动类别盛会

热门文章

  1. 媒体查询@media查询
  2. 抖音小店无货源玩法,玩好这几点小店轻轻松松月入上万
  3. setup/teardown 的用法
  4. 【电脑没声音怎么办】
  5. CN2线路好处都有啥?
  6. vi(vim)编辑器
  7. activiti设计工作流——任务派遣配置
  8. Windows查询电脑已连接过的所有WIFI密码
  9. uni-app概述官网
  10. safari浏览器使用js进行页面跳转