首頁 > web前端 > js教程 > 主體

JS物件是否擁有某屬性如何判斷

高洛峰
發布: 2017-02-08 17:29:00
原創
1079 人瀏覽過

JS物件是否擁有某個屬性

兩種方式,但稍有區別

1,in 運算子

var obj = {name:'jack'};
alert('name' in obj); // --> true
alert('toString' in obj); // --> true
登入後複製

   

可看到無論是name,還是原形鏈上的返回true。

 2,hasOwnProperty 方法

var obj = {name:'jack'};
obj.hasOwnProperty('name'); // --> true
obj.hasOwnProperty('toString'); // --> false
登入後複製

原型鏈上繼承過來的屬性無法透過hasOwnProperty偵測到,回傳false。

要注意的是,雖然in能偵測到原型鏈的屬性,但for in通常卻不行。

當然重寫原型後for in在IE9/Firefox/Safari/Chrome/Opera下是可見的。請參閱:for in的缺陷

感謝閱讀,希望能幫助大家,謝謝大家對本站的支持!

更多JS物件是否擁有某屬性如何判斷相關文章請關注PHP中文網!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板