在 TypeScript 中,可以单独声明构造函数的类型。构造函数类型通常用于描述如何创建类的实例,可以使用 new
关键字来定义构造函数的类型。
定义构造函数类型
// 定义一个构造函数类型 type PersonConstructor = { new (name: string, age: number): Person; }; // 定义 Person 类 class Person { name: string; age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } }
new (name: string, age: number): Person
:这表示构造函数接受两个参数name
和age
,并返回一个Person
类的实例。
使用构造函数类型
// 声明一个变量,其类型为 PersonConstructor let createPerson: PersonConstructor; // 赋值为 Person 类的构造函数 createPerson = Person; // 使用构造函数创建 Person 实例 const person = new createPerson('John', 30); console.log(person); // 输出: Person { name: 'John', age: 30 }
作者:新星_
链接:https://juejin.cn/post/7437042965116502056