本文共 1338 字,大约阅读时间需要 4 分钟。
function getTotal(one:number,two:number){ return one+two +""}const total =getTotal(1,2)那么tatal就不是number类型了 ,但是不会报错
正确是写法-返回值为numberfunction getTotal(one:number,two:number):number { return one + two } const tatal = getTotal(1,2)这样写就必加严谨了 可以看出tatal的类型为number
在实际工作中有很多函数是没有返回值的 例如function sayhello() { console.log("hello world")}这就是没有返回值的函数,我们就可以给他一个类型注解void,代表没有任何返回值。 function sayhello():void { console.log("hello world") }如果这样定义后,你再加入任何返回值,程序都会报错
执行的时候,抛出了异常,这时候就无法执行完了 function errFuncyion() { throw new Error() console.log("hello world") }还有就是循环 function forNever() { while(true){ } console.log("helo world") }
易错:
这个坑是大家都喜欢往里跳的我们如何定义参数对象的属性类型。我先写个一般javaScript的写法。function add({ a,b}){ return a + b } const three = add({ a:1,b:2}) console.log(three) 此时three的类型为any 这时很多人容易这样写 错误代码示例 function add({ a:number,b:number}){ return a + b } const three = add({ a:1,b:2})//你在编辑器中会看到这种写法是完全错误的。
function getNumber({ one }:{ one:number}):number { return one; }const one = getNumber({ one: 1 });这样写才是正确的写法,
转载地址:http://xgkgn.baihongyu.com/