在 Typescript 4.3 中,TypeScript 引入了 const
断言。const
断言用于告诉 TypeScript 编译器以下内容之一:
对象属性是只读的
将对象强制转换为 const
时,属性标记为只读,无法修改。
以下面的 person
变量为例,其中包含 name
和 age
。
const person = {
name: 'O.O',
age: 20
}
其类型按预期推断为 string
和 number
。
但如果我们将其断言为 const
,person
对象的推断类型将被标记为只读,并且无法修改。
const person = {
name: 'O.O',
age: 20
} as const
person.name = 'D.O' // TypeError
如果尝试更新 age
字段,则会抛出错误。
数组变成只读元组
数组上的 const
断言允许我们将数组标记为只读元组,即数组中每个位置的内容都成为无法修改的文本类型。
例如:
const arr =