您的位置:首页 > 其它

typescript速学:函数、基本数据类型

2017-05-29 13:31 309 查看
文档地址:

https://tslang.cn/docs/handbook/basic-types.html

在前面我们已经学过了『箭头函数』,我们发现在函数的参数可以使用数据类型。

let showMe = (name:string,age:number)=>{
return "我的名字是:"+name+",我的年龄是:"+age;
}


上面这个函数是2个参数,且在调用的时候必须传递2个参数。

如果我们需要第二个参数
age
可选的怎么办?

let showMe = (name:string,age?:number):string=>{
return "我的名字是:"+name+",我的年龄是:"+age;
}


注意
?号
,这个代表
age
这个参数的可选的。

书写完整函数类型

官网说明:

https://tslang.cn/docs/handbook/functions.html

我们通过实际案列来讲解一下它的作用。

//我们定义一个用于ajax函数
function ajax(callback){
setTimeout(()=>{
callback();
},1000);
}


可以看出,我们需要的参数是一个
回调函数
,所以在调用
ajax()
这个函数的时候是需要传递一个Function的。

ajax(function () {
console.log("my nan is jack");
})


但是问题就在于:我们不传递Function也没有报错(执行才会报错)



IDE并没有提示我们
ajax("hello");是错误的用法


那我们按照TypeScript的方法来,重新定义改造一下
ajax()


function ajax(callback:()=>void){
setTimeout(()=>{
callback();
},1000);
}


指明了
callback参数
是一个函数。



编辑器已经提示我们了。从这里我们应该可以看出:TypeScript和原生的JavaScript的好处了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: