TypeScript中如何使用hasOwnProperty方法

当我们在ts中需要判断一个对象是否存在一个属性的时候,使用js中的hasownPropperty方法发现报红显示:

Do not access Object.prototype method 'hasOwnProperty' from target object.(eslintno-prototype-builtins)

下面介绍几种ts中使用hasOwnProperty的方法。

1、直接使用,不去管报错

当我们的调用对象本身是javascript中的Object对象,在ts转换成js后是可以直接运行的。

const hasProp = obj.hasOwnProperty(prop)

2、强制转换

因为ts中默认对象并不是Object类型,我们只需要将其强制转换成Object即可直接使用hasOwnProperty方法:

const hasProp = (obj as Object).hasOwnProperty(prop)

3、通过改变方法指向进行执行

我们可以通过使用call、apply等改变hasOwnProperty的方法指向,来执行该方法:

const hasProp = Object.prototype.hasOwnProperty.call(obj, prop)

原创文章,作者:速盾高防cdn,如若转载,请注明出处:https://www.sudun.com/ask/78210.html

(0)
速盾高防cdn的头像速盾高防cdn
上一篇 2024年5月29日 下午4:08
下一篇 2024年5月29日 下午4:10

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注