跳转至

ts 的赋值类型兼容

ts 在进行赋值时会进行类型兼容,观察以下代码

image_2023-05-29-16-45-34

代码中先声明了拥有 left 字段的 healthy 变量后再赋值到一个 A 类型的对象 pass 时不会报错, 这是因为赋值时会对类型进行兼容处理,此时其输出为:

image_2023-05-29-16-48-16

而若我们直接进行赋值,即 unpass 对象,则会因严格的类型检测而不允许持有 right 字段