如何檢測乙個物件是否擁有某一屬性

2021-08-19 23:08:48 字數 762 閱讀 5132

如果我們要檢測物件

是否擁有某一屬性,可以用in操作符:

var obj= ;

'name'inobj; //true'grade'inobj; //false

注:

如果用in

判斷乙個屬性存在,這個屬性不一定是obj

的,它可能是obj

繼承得到的,如:

'tostring'inxiaoming; //true
因為tostring定義在object物件中,而所有物件最終都會在原型鏈上指向object,所以obj也擁有tostring屬性。

要判斷乙個屬性是否是obj自身擁有的,而不是繼承得到的,可以用hasownproperty()方法:

var obj= ;

obj.hasownproperty('name'); // true

obj.hasownproperty('tostring'); // false

判斷乙個物件是否有某乙個屬性

如果我們要檢測xiaoming是否擁有某一屬性,可以用in操作符 var xiaoming name in xiaoming true grade in xiaoming false 不過要小心,如果in判斷乙個屬性存在,這個屬性不一定是xiaoming的,它可能是xiaoming繼承得到的 tos...

JS如何判斷乙個物件是否為空 是否有某個屬性

方法一 let obj1 let obj2 function empty obj return true 為空 console.log empty obj1 true為空 console.log empty obj2 false非空 方法二 let obj1 if json.stringify ob...

JS如何判斷乙個物件是否為空 是否有某個屬性

方法一 let obj1 let obj2 function empty obj return true 為空 console.log empty obj1 true為空 console.log empty obj2 false非空方法二 let obj1 if json.stringify obj...