JS判断属性是否存在的几种方法

判断属性存在的方式有很多种,首先要确定自己的判断标准是什么?下面简单说明几种方式的使用场景

判断对象是否包含‘a’属性 例子:

const obj = {}

1. if ( obj.a !== undefined )

这种判断标准最不准确,实际上是判断a的属性值 是否为undefined

Object.keys(obj) .includes('a') 

这种判断标准是,obj有没有自有可枚举属性(属性是自己拥有,而不是原型继承的,可枚举属性)

obj.hasOwnProperty('a')

这种判断标准是,obj有没有自有属性‘a'

if ( 'a' in obj )

这种判断标准是,不管‘a'是不是自有属性(可能是原型继承上的),只要‘a’在obj能够访问到,就判定存在。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值