如何在 JavaScript 物件中檢查鍵是否存在?
有幾種方法可以查詢 JavaScript 物件中是否存在某個鍵。
假設我們有一個如下所示的“employee”物件。
var employee = { name: "Ranjan", age: 25 }
現在我們需要檢查“name”屬性是否在 employee 物件中存在。
1) “in” 運算子
我們可以在物件上使用“in”運算子來檢查其屬性。如果找不到物件的任何實際屬性,“in”運算子還會查詢繼承的屬性。
在以下示例中,當檢查“toString”是否存在時,“in”運算子會仔細檢查物件的屬性。一旦確認它不存在,它就會進入物件的基屬性。由於“toString”是一個基屬性,因此它會顯示“true”,如輸出所示。
示例
<html> <body> <script> var employee = { name: "Ranjan", age: 25 } document.write("name" in employee); document.write("</br>"); document.write("salary" in employee); document.write("</br>"); document.write("toString" in employee); </script> </body> </html>
輸出
true false true
2) hasOwnProperty()
此方法僅仔細檢查物件的實際屬性,而不是任何型別的繼承屬性。如果有實際屬性,則此方法會根據它們的可用性顯示 true 或 false。
在以下示例中,我們還搜尋了繼承的屬性,例如“toString”,因此它會顯示 false,如輸出所示。
示例
<html> <body> <script> var employee = { name: "Ranjan", age: 25 } document.write(employee.hasOwnProperty('toString')); document.write("</br>"); document.write(employee.hasOwnProperty('name')); document.write("</br>"); document.write(employee.hasOwnProperty('salary')); </script> </body> </html>
輸出
false true false
廣告