兩種方式,但稍有區別
1,in 運算子1
2
3
var
obj = ;
alert(
'name'
in
obj);
// --> true
alert(
'tostring'
in
obj);
// --> true
可看到無論是name,還是原形鏈上的tostring,都能檢測到返回true。
2,hasownproperty 方法1
2
3
var
obj = ;
obj.hasownproperty(
'name'
);
// --> true
obj.hasownproperty(
'tostring'
);
// --> false
原型鏈上繼承過來的屬性無法通過hasownproperty檢測到,返回false。
需注意的是,雖然in能檢測到原型鏈的屬性,但for in通常卻不行。
判斷JS物件是否擁有某屬性
兩種方式,但稍有區別 1,in 運算子 var obj alert name in obj true alert tostring in obj true 可看到無論是name,還是原形鏈上的tostring,都能檢測到返回true。2,hasownproperty 方法 var obj obj.h...
判斷JS物件是否擁有某屬性
判斷js物件是否擁有某屬性,兩種方法 1 in var obj alert name in obj true alert tostring in obj true 無論是name,還是原形鏈上的tostring,都能檢測到返回true。2 hasownproperty 方法 var obj obj....
判斷JS物件是否擁有某種屬性的兩種方式
兩種方式,但稍有區別 1,in 運算子 如下 var obj alert name in obj true alert tostring in obj true 可看到無論是name,還是原形鏈上的tostring,都能檢測到返回true。2,hasownproperty 方法 如下 var obj...