hasOwnProperty方法的使用

来源:互联网 发布:厦门seo分享 编辑:程序博客网 时间:2024/06/01 10:12

javaScript中hasOwnProperty函数
返回值:布尔值,指出一个对象是否具有指定名称的属性。
使用方法:
object.hasOwnProperty(proName)
其中:
参数object是必选项。一个对象的实例。
proName是必选项。一个属性名称的字符串值。

如果 object 具有指定名称的属性,那么javaScript中hasOwnProperty函数方法返回 true;反之则返回 false。此方法无法检查该对象的原型链中是否具有该属性;该属性必须是对象本身的一个成员。

example 1:
在下例中,所有的 String 对象共享一个公用 split 方法。下面的代码将输出 false 和 true。
var s = new String("JScript");console.log(s.hasOwnProperty("split"));//output  falseconsole.log(String.prototype.hasOwnProperty("split"));//output  true

example 2:
var man = {hands:2,heads:1,legs:2};if(typeof Object.prototype.clone == "undefined"){    Object.prototype.clone = function(){};  // 把clone方法加到所有对象上}for(var i in man){    if(man.hasOwnProperty(i)){          console.log(i + ":" + man[i]);    }}
加了hahOwnProperty判断,输出的结果是:
hands:2
head:1
leg:2

example 3:
var man = {hands:2,head:1,leg:2};if(typeof Object.prototype.clone == "undefined"){    Object.prototype.clone = function(){};// 把clone方法加到所有对象上}for(var i in man){    console.log(i + ":" + man[i]);}
没有加hasOwnProperty判断,输出的结果是:
hands:2
head:1
leg:2
clone:function (){}

参考书籍:《javascript设计模式》 Stoyan Stefanov 著,陈新 译

0 0
原创粉丝点击