TypeScript-进阶(四)-静态成员

112 阅读1分钟

1.定义

静态成员是指依附在类上的成员(属于某个构造函数的成员),即不需要实例化即可访问的成员,使用static定义。
实例成员是指通过构造函数/类实例化化后,通过实例化对象访问的成员。

2.使用

class A {
    // 实例成员
    name: string = '张三'
    // 静态成员
    static age: number = 12
}
const a = new A();
console.log(a.name);
console.log(A.age);

3.单例模式

单例模式指一个类只有一个实例,并提供全局访问点。

// 第一种方式
class A {
    // 私有化,外部无法进行 new 实例化
    private constructor() { }
    static readonly instance: A = new A()
}

const a = A.instance

// 第二种方法
class B {
    private constructor() { }
    private static _instance: B;
    static getInstance(): B {
        if (B._instance) return B._instance
        B._instance = new B();
        return B._instance
    }
}