function?add2(first:?number,?second:?number)?{??return?first?+?second?+?""; }function?add(first:?number,?second:?number):?number?{??return?first?+?second; }//因为total有了类型注解,所以要求add返回值必须为数值,所以这里?如果用add2的返回值就会报错,所以函数后面是否需要注解,也要看使用要求const?total:?number?=?add(1,?2);function?sayHello():?void?{??//?void的类型是空,不能有返回值 ??//?return?‘‘}function?errorEmitter():?never?{??throw?new?Error(); ??console.log(122);?//never的throw后面的不会执行 ??while?(true)?{}?//也是一个never类型,因为永远不会执行完,所以后面代码不会执行。}//?解构的注解方式function?add3({?first,?second?}:?{?first:?number,?second:?number?}):?number?{??return?first?+?second; } const?total2?=?add3({?first:?1,?second:?2?});//?一个解构的语法function?getNumber({?first?}:?{?first:?number?}):?number?{??return?first; }
?
原文:https://blog.51cto.com/u_11462036/2825263