Arrays 函数的类型脚本数组

Arrays 函数的类型脚本数组,arrays,function,types,typescript,type-alias,Arrays,Function,Types,Typescript,Type Alias,我想知道如何在TypeScript中声明类型化函数数组 例如,假设我有一个字段,它可以保存一个没有参数且返回void的函数: private func: () => void; 现在,假设我想要一个字段,它可以容纳这样的函数数组: private funcs: () => void []; 这显然是错误的方法,因为编译器认为这是一个返回空数组的函数 尝试用括号隔离内联原型声明,如中所示: private funcs2: ( () => void ) []; 导致编译

我想知道如何在TypeScript中声明类型化函数数组

例如,假设我有一个字段,它可以保存一个没有参数且返回void的函数:

private func: () => void;
现在,假设我想要一个字段,它可以容纳这样的函数数组:

private funcs: () => void  [];
这显然是错误的方法,因为编译器认为这是一个返回空数组的函数

尝试用括号隔离内联原型声明,如中所示:

private funcs2: (  () => void  ) [];
导致编译器错误


有人知道如何做到这一点吗?

您需要使用完整类型的文字语法,而不是
=>
速记:

private funcs: { (): void; }[];
如果界面看起来太奇怪,也可以制作一个界面:

// (elsewhere at top-level)
interface foo {
    (): void;
}

class etc {
    private funcs: foo[];
}
可能的副本: