//es5
//声明函数
function run(){}
//匿名函数
var run2 = function(){
return 'run2'
}
//ts
function run():string{
return 'sss'
}
//匿名函数
let fun2 = function():number{
return 1
}
//ts中定义方法传参
function getInfo(name:string,age:number):string{
return `${name}---${age}`
}
getInfo('张三',20) //张三---20
//参数的数据类型错了会报错
//匿名函数
let getInfo = function(name:string,age:number):string{
return `${name}---${age}`
}
//如果方法没有返回值
function run():void{}
方法的可选参数
es5中,方法的形参和实参可以不一样,但是ts中必须一致,如果不一致,就需要配置可选参数
function getInfo(name:string,age:number):string{
return `${name}---${age}`
}
//在调用getInfo时,两个参数是必填的,缺少就会报错
function getInfo(name:string,age?:number):string{
return `${name}---${age}`
}
getInfo('李四')
注意:可选参数必须配置到参数的最后面!,就是把可选参数放在参数的最后
默认参数
方法指定默认值
function getInfo(name:string,age:number=20):string{
return `${name}---${age}`
}
getInfo('李四') //李四---20
//参数顺序无所谓
剩余参数
function sum(a:number,b:number,c:number,d:number):number{
return a+b+c+d
}
//三点运算符,接受形参传过来的值
function sum(...result:number[]):number{
var sum = 0;
for(var i = 0; i < result.length; i++){
sum+=result[i]
}
return sum
}
sum(1,2,3,4,5,6,7)
function sum(a,...result:number[]):number{
var sum = a;
for(var i = 0; i < result.length; i++){
sum+=result[i]
}
return sum
}
sum(1,2,3,4,5,6,7)
//a:1,后面的赋值给...result
函数重载
ts中的重载:通过为同一个函数提供多个函数类型定义来实现多种功能的目的
以参数数量或者类型活返回值类型区分多个同名函数
function css(config:any):any{
}
function css(config:any,value:any):any{
}
感觉没啥用啊= =
不写了