here是一个更简单的
example:
const m : {
x : string
} = {
x: 's',
y : 'a' //Error
}
const foo : () => { y : string } = () => ({
y: '1',
s: 1, //No error
});
当涉及类型时,在大多数情况下,额外的属性无权造成伤害。即使对象中有几个额外的键,您在对象上的所有访问仍然可以正常工作。但是对于文字而言,直接提供类型定义并从不使用它的额外键可能是没有意义的。
严格来说,在类型中添加额外的密钥并不是一个风险,我认为这就是为什么这总是可以遵循的原因。