首頁 >web前端 >js教程 >JavaScript hasOwnProperty() 函數(圖文教學,附程式碼範例)

JavaScript hasOwnProperty() 函數(圖文教學,附程式碼範例)

亚连
亚连原創
2018-05-21 15:04:541723瀏覽

hasOwnProperty()函數用來指示一個物件本身(不包括原型鏈)是否具有指定名稱的屬性。以下透過本文跟大家分享JavaScript hasOwnProperty() 函數實例講解,有興趣的朋友一起看看吧

hasOwnProperty()函數用來指示一個物件本身(不包含原型鏈)是否具有指定名稱的屬性。如果有,回傳true,否則回傳false。

該方法屬於Object對象,由於所有的物件都"繼承"了Object的物件實例,因此幾乎所有的實例物件都可以使用該方法。

IE 5.5 、FireFox、Chrome、Safari、Opera等主流瀏覽器皆支援此函數。

語法

object.hasOwnProperty( propertyName )

參數

參數 描述
propertyName String類型指定的屬性名稱

返回值

hasOwnProperty()函数的返回值为Boolean类型。如果对象object具有名称为propertyName的属性,则返回true,否则返回false。

此方法不会检查对象的原型链中是否存在该属性,该属性只有是对象本身的一个成员才会返回true。

示例&说明

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 isPrototypeOf和hasOwnProperty使用区别(实用)

在JavaScript中对原型prototype全面分析

重点讲解在JavaScript中的__proto__属性(图文教程)

以上是JavaScript hasOwnProperty() 函數(圖文教學,附程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn