TypeScript笔记--函数

带 形参类型 和 函数返回类型 的函数


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

//                    函数参数的定义          函数返回值的定义
let myadd = function (x: number, y: number): number { return x + y; }

函数的完整类型

let madd: (x: number, y: number) => number = function (x: number, y: number): number { return x + y };

编译器推断函数类型

//编译器推断类型
let numberAdd = function (x: number, y: number): number { return x + y };
//如果左边没有定义类型,右边定义了,编译器会推断出
let numberAdd2:(x:number,y:number)=>number=function(x,y){return x+y;}
//左边定义了,右边没有定义

固定参数

function build(firstname:string,lastname:string):string{
    return firstname+" "+lastname
}
// let res1 = build("aa");  //报错只有一个参数
// let res2 = build("aa","bb","cc")  //报错参数超过
let res3  =build("aa","bb");

可选参数 ?

//可选参数
function bu(firstname:string,lastname?:string):string{
    return firstname+lastname;
}
let ress1 = bu("aa");  
// let res2 = build("aa","bb","cc")  //报错参数超过
let ress3  =bu("aa","bb");

默认参数

function strAdd(firstname:string,lastname:string="123"):string{
    return firstname+lastname;
}
let re1 = strAdd("aa");  
// let res2 = strAdd("aa","bb","cc")  //报错参数超过
let re3  =strAdd("aa","bb");

剩余参数  不知道要传多少参数进来


//剩余参数  不知道会有多少参数传进来
function buildName(firstname:string,...arg:string[]):void{
    console.log(firstname+""+arg.join())
}
let buildNameFun:(firstname:string,...arg:string[])=>void=buildName

重载

//函数重载
function getinfo(name:string):void;
function getinfo(age:number):void;
function getinfo(str:any):void{
    if(typeof str=='string'){
        console.log(str)
    }else if(typeof str=="number"){
        console.log("num"+str)
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值