ts重点学习54-函数重载笔记
  TEZNKK3IfmPf 2023年11月14日 38 0
export default {}

// 不使用函数重载
function add(a: number, b: number) {
return a + b;
}

add(10, 20);


function add2(a: string, b: string) {
return a + b;
}
add2("我的女神是: ", "邱淑贞");


function add3(a: string | number, b: string | number) {
// return a + b;
if( typeof a == "number" && typeof b =="number" ) {
return a + b;
}
if( typeof a == "string" && typeof b =="string" ) {
return a + b;
}
if( typeof a == "string" && typeof b =="number" ) {
return a + b;
}
if( typeof a == "number" && typeof b =="string" ) {
return a + b;
}
}

add3(10, 20);
add3("邱淑贞", "景甜");
add3(10, "孟子义");
add3("杨紫", 20);


// 函数重载
function addFunc(a: number, b: number):number;
function addFunc(a: string, b: string):string;
function addFunc(a: string, b: number):string;
function addFunc(a: number, b: string):string;

function addFunc(a: any, b: any): any {
return a + b;
}

addFunc(10, 20);
addFunc("邱淑贞", "景甜");
addFunc(10, "孟子义");
let res = addFunc("杨紫", 20);
console.log(res);


// 定义参数类型与参数数量不同
function star(s1: string): void;
function star(n1:number, s1: string): void;


function star(x: any, y?:any): void {
console.log(x);
console.log(y);

}

star("王心凌");
star("爱你");
star(1, "爱你");
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   43   0   0 ts
  TEZNKK3IfmPf   2023年11月14日   29   0   0 声明ts
  TEZNKK3IfmPf   2023年11月14日   23   0   0 ts
  TEZNKK3IfmPf   2023年11月14日   53   0   0 ts
TEZNKK3IfmPf