typescript函数

一,函数介绍

1.在javascript中函数有函数声明函数表达式两种

2.typescript函数在javascript函数基础上,为函数增加了参数和返回值的数据类型

二,typescript函数

1.为声明式函数增加类型

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

2.为函数表达式增加类型

const sum = function(x:number,y:number):number{
	return x + y 
}

const sum = (x:number, y:number):number => x + y;

三,typescript函数类型

1.除了直接在函数上增加类型,我们可以直接定义一个函数类型,换句话说,函数在typescript也是一种类型

2.定义函数类型方式一

type sumFn = (x:number,y:number) => number //使用type别名
const sum:sumFn= (x:number,y:number)=> x + y

3.使用接口定义函数类型

interface SumFn {
	(x:number,y:number):number
}

const sum:SumFn = (x:number,y:number) => x + y

四,函数参数

1.可以为函数参数设置默认值,注意可选参数不能设置默认值

function sum(x:number = 1,y:number):number{
	return x + y;
}

2.在使用函数时,多参数和少参数都是不允许的,可以为函数设置可选参数,注意可选参数一定要放最后

function sum(x:number = 1,y?:number):number{
	return x + y;
}

3.在typescript中剩余参数...rest 也可使用,且是数组类型

function sum(x:number = 1,y?:number,...rest:any:[]):number{
	return x + y;
}

五,函数重载

1.函数重载,就是可以多次声明一个同名函数,但是它们的参数类型不同或者参数个数不同。这样在调用时,可以根据传入参数类型的不同,参数个数的不同,来确定执行的到底是哪一个函数。

2.typescript的函数重载是一种伪重载,只可以通过传入的参数类型或个数不同,来决定返回什么类型逻辑处理也只能在函数实现时处理判断

3.函数重载的实现方式:通过 function 关键字声明重载的类型,最后写函数的实现

function reverse(x: number): number;
function reverse(x: string): string;
function reverse(x: number | string): number | string | void {
    if (typeof x === 'number') {
        return Number(x.toString().split('').reverse().join(''));
    } else if (typeof x === 'string') {
        return x.split('').reverse().join('');
    }
}

4.注意,函数重载和函数实现必须写在一块,中间不能插入其他语句

六,注意事项

1.在 TypeScript 的函数参数声明中,可选参数不能有默认值,有默认值的不能是可选参数

2.定义typescript函数时,参数一定要设置类型,否则会被认为是any且报错,如何确实不确定是什么类型,那么也要显示的把any标注上去

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值