在 TypeScript class
中声明常量的最佳方法是什么?
最佳答案
你不能声明一个常量,你可以声明一个 readonly
字段,它比你对常量的期望要弱,但可能已经足够了:
class MyClass {
static readonly staticReadOnly = 10;
readonly instanceReadonly = 10;
}
console.log(MyClass.staticReadOnly);
console.log((new MyClass).instanceReadonly);
我说它更弱,因为在运行时可以更改值,甚至在类型系统中我们也可以在没有类型断言的情况下违反
readonly
:let mutable: { instanceReadonly: number } = new MyClass() // valid assignment
mutable.instanceReadonly = 11; // we just changed a readonly field
如果可以,我会坚持在类外使用常规的
const
声明。关于typescript - 在 Typescript 类中声明一个常量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51476396/