TypeScript函数调用签名

TypeScript函数调用签名

函数在本质是一个对象,但特殊地方在于函数是可调用的对象。因此,可以使用对象类型来表示函数类型。

type DescribableFunction = {
    description: string; // 给函数绑定一个属性
    (someArg: number): boolean;
type DescriptionFunction = {
    description: string;
    (someArg: number): boolean;
function doSomething(fn: DescriptionFunction) {
    console.log(fn.description + 'returned' + fn(12345))
function fn1(n: number): boolean {
    console.log(n)
    return true