js属性对象的hasOwnProperty方法
发布日期:2021-05-06 20:27:00 浏览次数:21 分类:精选文章

本文共 571 字,大约阅读时间需要 1 分钟。

判断自生属性与继承属性

在JavaScript中,自生属性和继承属性是两个不同的概念。自生属性是直接属于对象的属性,而继承属性则是通过对象的 prototype 链继承下来的属性。

举例来说,函数foo定义了name属性和一个方法sayHi。这个方法是直接在对象本身的属性,而不是通过 prototype 继承的。因此,当我们创建一个foo的实例,如myPro时,myPro.name是自生属性,myPro.hasOwnProperty('name')返回true。而myPro.hasOwnProperty('sayGoodBy')返回false,因为sayGoodBy是在foo的 prototype 上定义的,属于继承属性。

判断自生属性是否存在

创建一个对象o,并通过o.newprop = o.prop添加了newprop属性。然后在changeO函数中删除了o.prop。因此,o.hasOwnProperty('prop')返回false,说明prop已经被删除。

遍历一个对象的所有自身属性

使用for...in循环可以枚举对象的所有属性,包括继承属性。为了只显示自生属性,可以使用hasOwnProperty()方法来过滤继承属性。例如,在下面的代码中,fog是自生属性,而toString是继承属性,因此会显示fog的值。

上一篇:Dom基础
下一篇:Dom 节点

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月22日 00时49分03秒