Day26-TypeScript(TS)的函式多载(Overloads)

前面讲了那麽多函式希望大家都有好好吸收,
那麽我们来到了基本函式的最後一个环节了喔。
也就是TypeScript(TS)的函式多载(Overloads)

函式多载的特性是什麽呢?

函是参数个数与型别不同,
函式名称可以命名为相同名称,
不过需要实作多个同名的函示。

而在C#或JAVA等许多程序语言中,
函式都具有多载(Overloads)的特性。

另外在TS中,
函式多载只能有一个实作。

那麽让握们来看看范例吧。

function add(x: number, y: number): number;
function add(x: string, y: string): string;
function add(x: any, y: any): any {
    return x + y;
}

定义多载函式add
可以传入两个数值
或两个字串参数。

前两行程序码先定义函式签名,
接着再实作add函式。

呼叫add函式时,
传入的引数函式签名中的参数回传值的型别不相符时,
便会视为错误。

那麽依照上面定义的函式,
正确与错误呼叫的方式如下,

正确呼叫:

console.log(add(10,20));//30
console.log(add("10","20"));//1020

错误呼叫:

console.log(add(10));
console.log(add(10,20,30));
console.log(add(10,"20"));
console.log(add(true,false));

今日结语

函式多载有个很方便地方,
因为可以重复命名,
所以在某些情况也为工程师省下了命名的时间呢,
那麽最後大家还是继续加油喔。


<<:  虹语岚访仲夏夜-27(打杂的Allen篇)

>>:  DAY26-EXCEL统计分析:相关分析介绍

後记

大家好,这是Kate的第二次参赛。 这次的心得也是:万岁,终於平安写完三十天了。 铁人赛这种东西是不...

[Day 27] Bevy 游戏引擎 (Part 1)

昨天大概讲完 Rocket 的运用了 所以接下来就来介绍其他东西吧 这次要讲的是 Game Engi...

[Day30]用Canvas打造自己的游乐场-挑战心得

30天的挑战就这样结束了,现在的心情怎麽有些空虚呢?? 哈哈哈,为什麽会这样呢??我想跟题目有关吧,...

认识 Java 基础 第一天~

报名铁人赛希望可以有每天学习一点的动力跟每天消化一点的开始! 初次报名,请多多指教XD 因为不知道要...

[Day 04] - 用Spring Boot连接Mongo DB

今天一开始 先来新增spring boot的连线设定 Spring Boot的设定档 applica...