TypeScript - 类的只读属性

139 阅读1分钟

对属性成员除了可以用 private、protected 去控制它的访问级别,还可以使用 readonly 关键词把成员设置成只读的。如果说属性已经有了访问修饰符 readonly 应该跟在访问修饰符的后面,对于只读属性我们可以选择在类型声明的时候直接通过等号的方式去初始化,也可以在构造函数当中去初始化,两者只能选其一。并且初始化以后就不能被再修改了,不管是在内部还是在外部都是不能被再修改的。

class Person {
    public name: string
    private age: number
    protected readonly gender: boolean
    construnctor (name: string, age: number) {
        this.name = name
        this.age = age
        this.gender = true
    }
    sayHi (mag: string): void {
        console.log(`my name is ${name}, ${msg}`)
    }
}