08 | 接口(2):函数类型接口

interface1.ts

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// let add: (x:number,y:number) => number

// interface Add{
// (x:number, y:number): number
// }

type Adds = (x: number, y:number) => number

let adds: Adds = (a, b) => a + b

interface Lib{
():void;
version: string;
doSomething():void
}

function getLib(){
let lib: Lib = (() => {}) as Lib
lib.version = '1.0';
lib.doSomething = () => {}
return lib;
}

let lib1 = getLib();
lib1();
lib1.doSomething();

let lib2 = getLib();

要是这篇文章帮到了您,期待您请我喝一杯咖啡。