當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript Object hasOwn()用法及代碼示例


JavaScript hasOwn()方法 用於檢查對象是否具有指定的屬性。如果屬性存在則返回 true,否則返回 false。引入此方法是為了替代hasOwnProperty()方法。它不同於在運算符中因為它不檢查繼承的屬性。

用法:

Object.hasOwn(obj, prop)

Parameters: 該方法有兩個參數

  • obj: 這是要應用檢查的 JavaScript 對象
  • prop: 這是要應用支票的屬性

返回值:如果存在則為布爾值 true,否則為 false。

示例 1:此示例使用hasOwn()方法來檢查屬性是否存在

Javascript


let details = { 
    name: "Raj", 
    course: "DSA", 
    website: "geeksforgeeks.org", 
} 
  
console.log(Object.hasOwn(details, 'name')); 
console.log(Object.hasOwn(details, 'course')); 
console.log(Object.hasOwn(details, 'phone number'));

輸出:

true
true
false

示例 2:此示例將比較 in 運算符和 Object.hasOwn() 方法。

Javascript


let details = { 
    name: "Raj", 
    course: "DSA", 
    website: "geeksforgeeks.org", 
} 
  
console.log(Object.hasOwn(details, 'name')); 
console.log('name' in details); 
  
console.log(Object.hasOwn(details, 'toString')); 
console.log('hasOwnProperty' in details);

輸出:in 運算符甚至對於繼承的屬性也會返回 true,例如 toString 是所有 JavaScript 對象的繼承方法。

true
true
false
true

示例 3:該方法比較hasOwnProperty()方法和hasOwn()方法。

Javascript


let details = Object.create(null); 
details.course = "DSA"; 
  
console.log(Object.hasOwn(details, "course")); 
console.log(Object.hasOwnProperty(details, "course"))

輸出:hasOwnProperty() 方法不適用於 null 對象,但 hasOwn() 方法適用。所以它比hasOwnProperty()方法更好

支持的瀏覽器:

  • Chrome
  • Edge
  • Firefox
  • Opera
  • Safari

我們有一個完整的對象方法和屬性列表,請查看這些方法和屬性JavaScript 對象參考文章。



相關用法


注:本文由純淨天空篩選整理自shobhit_sharma大神的英文原創作品 JavaScript Object hasOwn() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。