📜  在打字稿中扩展类型(1)

📅  最后修改于: 2023-12-03 15:08:02.313000             🧑  作者: Mango

在打字稿中扩展类型

在编写代码时,我们往往需要使用到许多类型来定义变量和函数。但是有时候这些类型不能满足我们的需求,所以我们需要自定义类型来满足我们的需求,这就是在打字稿中扩展类型。

在 TypeScript 中,我们可以通过接口来定义自己的类型。下面是一个接口的定义示例:

interface Person {
  name: string;
  age: number;
}

在这个示例中,我们定义了一个名为 Person 的接口,该接口有两个属性,nameage。这些属性的类型分别为字符串和数字。

接口可以作为变量类型来使用,这样我们就可以创建一个类型为 Person 的变量了:

let person: Person = { name: 'Tom', age: 20 };

当然,在 TypeScript 中,我们还可以创建类来定义自己的类型。下面是一个类的定义示例:

class Person {
    private name: string;
    private age: number;

    constructor(name: string, age: number) {
        this.name = name;
        this.age = age;
    }

    get Name(): string {
        return this.name;
    }

    get Age(): number {
        return this.age;
    }
}

在这个示例中,我们定义了一个名为 Person 的类,该类有两个私有属性,nameage。这些属性的类型分别为字符串和数字。

我们还在类中定义了一个构造函数,用于初始化类的属性值。同时,我们也定义了两个公共的 get 方法,用于获取私有属性的值。

当然,在 TypeScript 中,我们还可以通过其他方式来定义自己的类型,比如使用枚举、联合类型、交叉类型等。

无论使用哪种方式,通过在打字稿中扩展类型,我们可以更好地满足我们的需求,更加灵活地创建符合我们期望的变量和函数。