es5 中定义函数的方法
// 函数声明
function test(){
return 'run';
}
// 匿名函数
var test2 = function(){
return 'run2';
}
ts函数声明法
// 正确的写法:
function run():string{
return '今天,天气不好';
}
// 错误的写法
function run2():string{
return 123;
}
ts匿名函数
var run2 = function():number{
return 123;
}
alert(run2())
ts中定义方法传参
// ts定义方法传参
function getinfo(name:string,age:number):string{
return `${name} ---- ${age}`;
}
alert(getinfo('张三',20));
ts没有返回值的方法
function run():void{
console.log("run");
}
run();
方法的可选参数
es5方法的实参和形参可以不一样,但是ts中必须一样,如果不一样就需要配置可选参数。
问号(?)配置可选参数
function getinfo(name:string,age:number):string{
if(age){
return `${name}---${age}`;
}else{
return `${name} ---- 姓名保密`;
}
}
alert(getinfo('张三'));
虽然能输出结果,但是会报错
alert(getinfo('张三',22));
如果只给一个参数,就需要在形参后面加 ‘ ?’;当给一个参数时也不会报错。
function getinfo(name:string,age?:number):string{
if(age){
return `${name}---${age}`;
}else{
return `${name} ---- 姓名保密`;
}
}
默认参数(可选参数)。es5没法设置默认参数,es6和ts中可以设置默认参数
function getInfo(name:string, age:number=26):string{
return `${name}--${age}`
}