我是 typescript 初学者,我很想知道为什么我不能这样做:
const obj: {
property1: string
property2: boolean
property3: function
}
我认为唯一的选择是这样做:
const obj: {
property1: string
property2: boolean
property3: any
}
为什么必须在对象声明上立即在 property3 上实现函数?
最佳答案
Typescript确实具有Function
类型,这意味着需要一个参数any
并返回any
结果的函数,尽管我强烈建议您不要使用它。
相反,您应该使用function signature,它允许您显式指定参数类型和返回类型:
let obj: {
property1: string
property2: boolean
property3: (a: string, b: boolean) => number
}
Playground Link