我们定义一个接口
函数类型接口
interface fun{ (value1:string,value2:string):string; } var setData:fun=function(value1:string,value2:string):string{ return value1+value2; } console.log(setData("name","张三"))
我们看一下编译之后的js文件
但是此时的接口只能输出string类型,不能输出任意类型的数据
我们可以结合泛型来实现
泛型类型接口
第一种定义泛型接口
interface fun{ <T>(value1:T):T; } var setData:fun=function<T>(value1:T):T{ return value1; } console.log(setData<string>("name")) console.log(setData<string>("123")) console.log(setData<number>(123))
编译后的js文件
第二种定义泛型接口
interface fun<T>{ (value1:T):T; } function setData<T>(value:T):T{ return value } var set:fun<string>=setData console.log(set("name")) console.log(set("123"))
编译后的js文件