目录
1、函数
2、类
1、函数
(1)参数列表里面的每个参数都需要名称和类型(形参、实参、返回值都要)。我们可以给每个参数添加类型之后再为函数本身添加返回值类型。 TypeScript能够根据返回语句自动推断出返回值类型,因此我们通常省略它。
// 函数有两个参数,第一个参数表示数字,第二个表示任类型的数组
// 参数少了不行
// :[number,any[]]表示返回的是元组,第一个数字,第二个是任意类型的数组
function fm (arg1:number,arg2:any[]):[number,any[]]{
return [arg1*arg1,[10,"hello",arg2]]
}
let [x,y]=fm(100,[10,20,true]) // 解构赋值
console.log(x,y);
(2)为函数定义类型
// 声明式:只有一种
function add(x: number, y: number): number {
return x + y;
}
// 定义式:只要是引用的方式都是
let myAdd = function(x: number, y: number): number { return x + y; };
区别:定义式可以改变this的指向,call、apply、bound
(3)可选参数和默认参数
可选参数加?号;
// 函数可选参数
// 接口
interface Params{
params:object
}
// 要求arg2 是Params的类型,且必须带有params:object
function Myaxiosget(arg1:string,arg2?:Params){};
Myaxiosget('http://xxx',{params:{}}); // 可选或者不可选