构造函数类型

在 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 }
相关推荐
Hamm3 小时前
为了减少维护成本,我们把AirPower4T拆成了一个个NPM包
前端·vue.js·typescript
oil欧哟6 小时前
😎 MCP 从开发到发布全流程介绍,看完不踩坑!
人工智能·typescript·node.js
无责任此方_修行中17 小时前
关于 Node.js 原生支持 TypeScript 的总结
后端·typescript·node.js
bigyoung1 天前
ts在运行时校验数据类型的探索
前端·javascript·typescript
尽-欢1 天前
以太坊DApp开发脚手架:Scaffold-ETH 2 详细介绍与搭建教程
react.js·typescript·web3·区块链
季禮祥1 天前
都2025了,你确定你完全掌握Typescript了吗
前端·typescript
_十六2 天前
TS 的 unknown 与 any:安全与灵活的平衡点
前端·typescript
阿白的白日梦2 天前
JSX 元素隐式具有类型 "any",因为不存在接口 "JSX.IntrinsicElements"。ts 无法使用 JSX,除非提供了 "--js
前端·javascript·typescript
linweidong2 天前
前端Three.js面试题及参考答案
前端·javascript·vue.js·typescript·前端框架·three.js·前端面经
EricXJ3 天前
为什么选择 tsup?
前端·webpack·typescript