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
}
fn1.description = 'hello '
doSomething(fn1)
网友评论