hasOwnproperty()
函数用于指示一个对象自身(不包括原型链)是否具有指定名称的属性。如果有,返回true,否则返回false。
该方法属于Object对象,由于所有的对象都"继承"了Object的对象实例,因此几乎所有的实例对象都可以使用该方法。
IE 5.5+、FireFox、Chrome、Safari、Opera等主流浏览器均支持该函数。
语法
rush:js;">
object.hasOwnProperty( propertyName )
参数
Nowrap; border-bottom: rgb(132,132,132) 1px solid; outline-width: 0px; padding-bottom: 5px; padding-top: 5px; outline-style: none; padding-left: 5px; margin: 0px; border-left: rgb(128,128) 1px solid; outline-color: invert; padding-right: 5px">参数 | ottom: rgb(128,128) 1px solid; outline-width: 0px; padding-bottom: 5px; padding-top: 5px; outline-style: none; padding-left: 5px; margin: 0px; border-left: rgb(128,128) 1px solid; outline-color: invert; padding-right: 5px">propertyName | ottom: 0px; color: rgb(238,255,255); outline-width: 0px; padding-bottom: 0px; padding-top: 0px; outline-style: none; padding-left: 3px; margin: 0px 5px 0px 0px; border-left: 0px; display: inline-block; outline-color: invert; padding-right: 3px">String类型指定的属性名称
---|
返回值
hasOwnproperty()
函数的返回值为Boolean类型。如果对象object具有名称为propertyName
的属性,则返回true,否则返回false。
此方法不会检查对象的原型链中是否存在该属性,该属性只有是对象本身的一个成员才会返回true。
示例&说明
rush:js;">
function Site(){
this.name = "CodePlayer";
this.url = "http://www.365mini.com/";
this.sayHello = function(){
document.writeln("欢迎来到" + this.name);
};
}
var obj = {
engine: "PHP",sayHi: function(){
document.writeln("欢迎访问" + this.url);
}
};
// 使用对象obj覆盖Site本身的prototype属性
Site.prototype = obj;
var s = new Site();
document.writeln( s.hasOwnProperty("name") ); // true
document.writeln( s.hasOwnProperty("sayHello") ); // true
// 以下属性继承自原型链,因此为false
document.writeln( s.hasOwnProperty("engine") ); // false
document.writeln( s.hasOwnProperty("sayHi") ); // false
document.writeln( s.hasOwnProperty("toString") ); // false
// 想要查看对象(包括原型链)是否具备指定的属性,可以使用in操作符
document.writeln( "engine" in s ); // true
document.writeln( "sayHi" in s ); // true
document.writeln( "toString" in s ); // true
总结
以上所述是小编给大家介绍的JavaScript hasOwnproperty() 函数实例详解。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持。