微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript检测实例属性, 原型属性

0.前提

JavaScript对象的属性分为两种存在形态. 一种是存在实例中,另一是存在原型对象中.

根据上述,检测属性的时候会出现4种情况

既不存在实例中,也不存在原型对象中 存在实例中,不存在原型对象中 不存在实例中,存在原型对象中 既存在实例中,也存在原型对象中

1.hasOwnPrototype()

hasOwnPrototype()接受一个字符串格式的属性名称,如果实例本身存在该属性(情况2/情况4),返回true. 否则,返回false(情况1/情况3).

代码如下:

2.in操作符

in操作符无论属性是存在实例本身中,还是原型对象中,就会返回true(情况2/情况3/情况4); 否则,返回false(情况1).

代码如下:

3.检测存在原型的属性

结合in操作符和hasOwnproperty()就可以自定义函数来检测原型中是否存在给定的属性.

代码如下:

原型中存在给定属性,返回true(情况3). 否则返回false(情况1/情况2/情况4).

以上就是本文的全部内容了,希望大家能够喜欢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐