1.使用TypeScript语法编写函数:
/**
* 1.定义一个普通函数
* @param a 参数a并且指定参数类型
* @param b 参数b并且指定参数类型
* @returns {number} 返回的类型为number
*/
function sum1(a:number,b:number):number{
return a+b;
}
/**
* 2.定义一个匿名函数
* @param a 参数a并且指定参数类型
* @param b 参数b并且指定参数类型
* @returns {number} 返回的类型为number
*/
var sum2=function (a:number,b:number):number {
return a+b;
}
/**
* 3.定义一个字符串拼接函数(缺点:参数a,b的语义性不好,不知a,b代表的具体意思)
* @param a 参数a字符串类型
* @param b 参数b数字类型
* @returns {string} 返回字符串类型
*/
var sum3=function (a:string,b:number):string {
return a+b;
}
/**
* 4.定义一个字符串拼接函数 (增强参数a,b的语义性,在 =号左边添加参数语义说明)
* @param a 参数a字符串类型
* @param b 参数b数字类型
* @returns {string} 返回字符串类型
* :(name:string,age:number) 增强参数a,b的语义性
* =>string 指定返回的类型
*/
var sum4:(name:string,age:number)=>string = function (a:string,b:number):string {
return a+b;
}
2.编译后对应的ES5的语法:
/**
* 1.定义一个普通函数
* @param a 参数a并且指定参数类型
* @param b 参数b并且指定参数类型
* @returns {number} 返回的类型为number
*/
function sum1(a, b) {
return a + b;
}
/**
* 2.定义一个匿名函数
* @param a 参数a并且指定参数类型
* @param b 参数b并且指定参数类型
* @returns {number} 返回的类型为number
*/
var sum2 = function (a, b) {
return a + b;
};
/**
* 3.定义一个字符串拼接函数 (缺点:参数a,b的语意性不好)
* @param a 参数a字符串类型
* @param b 参数b数字类型
* @returns {string} 返回字符串类型
*/
var sum3 = function (a, b) {
return a + b;
};
/**
* 4.定义一个字符串拼接函数 (增强参数a,b的语义性,在 =号左边添加参数语义说明)
* @param a 参数a字符串类型
* @param b 参数b数字类型
* @returns {string} 返回字符串类型
* :(name:string,age:number) 增强参数a,b的语义性
* =>string 指定返回的类型
*/
var sum4 = function (a, b) {
return a + b;
};