700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > TypeScript 错误property does not exist on type Object

TypeScript 错误property does not exist on type Object

时间:2024-02-21 15:36:18

相关推荐

TypeScript 错误property does not exist on type Object

在TypeScript中如果按JS的方式去获取对象属性,有时会提示形如Property 'value' does not exist on type 'Object'的错误。具体代码如下:

var obj: Object = Object.create(null);obj.value = "value";//[ts] Property 'value' does not exist on type'Object'.

这是因为Typescript在执行代码检查时在该对象没有定义相应属性,遇到该报错有以下几种解决方式:

1.将对象类型设置为any

这是是一种非常效率的解决办法,可以访问修改任何属性不会出现编译错误。具体代码如下:

var obj: any = Object.create(null);obj.value = "value";

2.通过字符方式获取对象属性

这种方式有些hack的感觉,但是依然能解决编译错误的问题。具体代码如下:

var obj: Object = Object.create(null);obj["value"] = "value";

3.通过接口定义对象所具有的属性

虽然较为繁琐,但却是最提倡的一种解决方式。通过接口声明对象后,所具有的属性值一目了然。具体代码如下:

var obj: ValueObject = Object.create(null);obj.value = "value";interface ValueObject {value?: string}

4.使用断言强制执行

声明断言后,编译器会按断言类型去执行。具体代码如下:

var obj: Object = Object.create(null);(obj as any).value = "value";

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。