javascript中hasOwnProperty函数方法是返回一个布尔值.指出一个对象是否具有指定名称的属性.
语法: object.hasOwnProperty(proName);
object 是必选项,一个对象的实例.
proName一个属性名称的字符串值.
此方法无法检查该对象的原型链中是否具有该属性;该属性必须是对象本身的一个成员。
想要查看对象(包括原型链)是否具备指定的属性,可以使用in操作符.
1 function Site() {
2 this.name = "百度搜索页面";
3 this.url = "http://www.baidu.com/";
4 this.sayHello = function () {
5 document.writeln("欢迎来到" + this.name);
6 }
7 }
8 var obj = {
9 engine : "php",
10 sayHi: function() {
11 document.writeln("欢迎访问" + this.url);
12 }
13 }
14
15 //使用对象obj覆盖Site本身的prototype属性
16 Site.prototype = obj;
17
18 var s = new Site();
19 document.writeln( s.hasOwnProperty("name") ); //true
20 document.writeln( s.hasOwnProperty("sayHello") ); //true
21
22 //以下属性继承自原型链, 因此为false
23 document.writeln( s.hasOwnProperty("engine") ); //false
24 document.writeln( s.hasOwnProperty("sayHi") ); //false
25 document.writeln( s.hasOwnProperty("toString") ); //false
26
27 //想要查看对象(包括原型链)是否具备指定的属性,可以使用in操作符
28 document.writeln( "engine" in s ); //true
29 document.writeln( "sayHi" in s ); //true
30 document.writeln( "toString" in s ); //true