啥也不说,直接上代码
function echo<T>(t:T): T {
return t;
}
console.info("传入字符串:"+echo("字符串"));
console.info("传入数字:"+echo(3));
console.info("传入布尔值:"+echo(true));
let fruits:string[] = ["apple","banana","orange","pear"];//第一种数组定义方式
let foods:Array<string> = ["rice","noodle","bread","meat"];//第二种数组定义方式
console.info("传入水果数组:"+echo(fruits));
console.info("传入食物数组:"+echo(foods));
//let my_tuple:[string,number]=["abc",123];
let my_tuple:[string,number];
my_tuple=["abc",123];
my_tuple[0]="def";
my_tuple[1]=456;
console.info("传入元组:"+my_tuple);
enum WEEKDAY{
SUNDAY,MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY
}
// enum WEEKDAY2{
// SUNDAY=0,MONDAY=1,TUESDAY=2,WEDNESDAY=3,THURSDAY=4,FRIDAY=5,SATURDAY=6
// }
let day : WEEKDAY;
day=WEEKDAY.SUNDAY;
console.info("传入枚举对象:"+day);
switch(day as number){/**注意:如果不加as any 这一句,后面语句会报 Type '***' is not comparable to type '***'.ts(2678),具体原因我还没搞懂 */
case WEEKDAY.SUNDAY:
console.info("今儿个礼拜天啊,好好睡一觉啊...");
break;
case WEEKDAY.FRIDAY:
console.info("今儿个礼拜五啊,明天就休息哈...");
break;
}
代码执行结果:
PS D:\ts_demo> tsc .\MyGeneric.ts
PS D:\ts_demo> node .\MyGeneric.js
传入字符串:字符串
传入数字:3
传入布尔值:true
传入水果数组:apple,banana,orange,pear
传入食物数组:rice,noodle,bread,meat
传入元组:def,456
传入枚举对象:0
今儿个礼拜天啊,好好睡一觉啊...
备注:关于TS枚举类型在switch语句中告警问题StackOverflow网站有大神解说过,我附上地址,有兴趣小伙伴可取查看。
地址在这里