- 在
Javascript
中获取对象的属性或者方法使用点或者中括号的这两种方式即可,例如:
const obj = {
a: 'a'
}
obj.a // 'a'
obj.b // undefined
- 但是在
Typescript
中,有时会提示像Property 'value' does not exist on type 'Object'
的错误,这是因为Typescript
在执行代码检查时在该对象没有定义相应属性 - 解决方式:
- 将对象类型设置为
any
,例如:
const obj:any = { a: 'a' } obj.b = 'b'
- 通过接口定义对象所具有的属性,例如:
const obj:ValueObject = { a: 'a' } interface ValueObject { value?: string } obj.b = 'b'
- 使用断言强制执行
const obj = { a: 'a' } (obj as any).b = 'b'
- 将对象类型设置为