首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何检查JavaScript对象上是否存在一个属性?

在JavaScript中,有几种方法可以检查对象上是否存在一个属性。选择哪种方法在很大程度上取决于实际需求,所以需要我们了解每种方法的工作原理。

让我们来看看最常用的几种方法。

1. 真值检查

有一个很简单的方法,就是简单的检查房产是否真实。

正如你所看到的,这导致了几个假值的问题,所以使用这种方法时要非常小心。

2. in 操作符

如果一个属性存在于一个对象或其原型链上,in操作符返回true。

in操作符不会受到假值问题的影响。然而,它也会对原型链上的属性返回true。这可能正是我们想要的,如果我们不需要对原型链上对属性进行判断,可以使用下面这种方法。

3. hasOwnProperty()

hasOwnProperty()继承自Object.HasOwnProperty()。和in操作符一样,它检查对象上是否存在一个属性,但不考虑原型链。

不过要注意的一点是,并不是每个对象都继承自Object。

如果遇到这种罕见的情况,还可以按以下方式使用。

总之

这三种方法都有其适合使用的场景,重要的是需要我们要熟悉它们的区别,这样才能选择最好的一种,以便让我们的代码能够按照期望运行。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210309A071DU00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券