构造函数类型

在 TypeScript 中,可以单独声明构造函数的类型。构造函数类型通常用于描述如何创建类的实例,可以使用 new关键字来定义构造函数的类型。

定义构造函数类型

ts 复制代码
// 定义一个构造函数类型 
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:这表示构造函数接受两个参数 nameage,并返回一个 Person 类的实例。

使用构造函数类型

ts 复制代码
// 声明一个变量,其类型为 PersonConstructor 
let createPerson: PersonConstructor; 
// 赋值为 Person 类的构造函数 
createPerson = Person; 
// 使用构造函数创建 Person 实例 
const person = new createPerson('John', 30); 
console.log(person); // 输出: Person { name: 'John', age: 30 }
相关推荐
ch_09181 天前
从0构建SDK第3节:实现 ReActAgent 的推理与行动循环
typescript·llm·agent
疯狂的魔鬼1 天前
一套 Schema 驱动四视图:记 useCrudSchemas 的设计与实践
前端·javascript·typescript
kyriewen4 天前
别再对着 TypeScript 报错发呆了:我把 10 个最常见的红色波浪线翻译成了人话
前端·javascript·typescript
妙码生花4 天前
现代前端的极致性能 icon 加载方案(死磕成功版)
前端·vue.js·typescript
MonkeyKing4 天前
鸿蒙ArkTS深度剖析:ArkTS与TS/JS核心差异、静态强类型实战优势
typescript·harmonyos
Momo__6 天前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript
Awu12277 天前
⚡从零开发 Agent CLI(四):给 CLI 装上"LLM 引擎"
typescript·ai编程·claude
假如让我当三天老蒯8 天前
TypeScript 继续学习(学习用)
前端·面试·typescript
糖拌西瓜皮9 天前
Node.js工程化实践:包管理、TypeScript配置与代码质量
typescript·node.js
Bolt11 天前
TypeScript 7.0 来了:当 tsc 用 Go 重写之后
javascript·typescript·go