typescript-函数

1.函数:封装了一些重复使用的代码,在需要的时候直接调用即可。

函数声明,命名函数

函数中的x和y参数的类型都是string类型,小括号后面的:string,代表的是该函数的返回值也是string类型的

function add(x:string,y:string):string{

        return x+y;//求和的函数

}

const result1:string=add('111',222);
console.log(result1)

函数表达式,匿名函数

函数中的x和y参数的类型都是number类型,小括号后面的:number,代表的是该函数的返回值也是number类型的

const add2 = function(x:number,y:number):number{
    return x +y;
}
console.log(add2(10,20));//30

函数的完整写法:

add3是变量名

(x:number,y:number)=>number 是当前这个函数的类型

const add3:(x:number,y:number)=>number = function(x:number,y:number):number{
    return x +y;
}
console.log(add3(10,20));//30

可选参数:函数在声明的时候,内部的参数使用了?进行修饰,那么就表示该参数可以传入也可以不传。

默认参数:函数在声明的时候,内部的参数有自己的默认值,此时这个参数就可以叫默认参数

const getFullName=function (firstName:string-='东方',lastName?:string):string{
    //判断名字是否传入了
    if(lastName){
        return firstName+'_'+lastName
    }else{
        return firstName
    }
}
//函数调用
//什么也不传入
console.log(getFullName())
//只传入姓氏
console.log(getFullName('张'))
//传入姓氏和名字
console.log(getFullName('张','三'))

剩余参数(rest参数)

剩余参数是放在函数声明的时候所有的参数的最后

function showMsg(str:string,str2:string,...args:string[]){
    //...agrs:sgring[]是剩余的参数,放在了一个字符串的数字中,agrs里面。
    console.log(str)//a
    console.log(str2)//b
    console.log(agrs)//['a','c','d']
}

showMsg('a','b','a','c','d')

函数重载声明

例如一个需求:一个add函数,它可以接收2个string类型的参数进行拼接,也可以接收2个number类型的参数进行相加,但是只能有这两种情况出现。否则就报红。

function add(x:string,y:string):string
function add(x:number,y:number):number
function add(x:number|string,y:number|string):number|string{
    if((typeof x==='string'&&typeof y==='string')||(typeof x==='number'&&typeof y==='number')){
        return x+y
    }
}

console.log(add(1,2))//3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值