av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

JS對象屬性的檢測與獲取操作實例分析

瀏覽:117日期:2024-05-16 15:53:35

本文實例講述了JS對象屬性的檢測與獲取操作。分享給大家供大家參考,具體如下:

1.1 in運算符

in運算符用于檢查對象是否包含某個屬性(注意,檢查的是鍵名,不是鍵值), 如果包含就返回true,否則返回false

var obj = { p: 1 }’p’ in obj // true’toString’ in obj // true

上面代碼中,obj對象上有一個p屬性,所以使用in運算符時,得到true,但toString并沒有在obj對象上,為什么也返回true呢,這是因為in運算符,不能識別哪些屬性是對象自身的,哪些是繼承的。因為toString是繼承自obj的原型對象,所以會返回true。

1.2 for … in 循環

for … in 循環用來遍歷一個對象的全部屬性。

var obj = {a: 1, b: 2, c: 3};for (var i in obj) { console.log(obj[i]);}

for … in 循環有兩個使用注意點

它遍歷的是對象所有可遍歷的屬性,會跳過不可遍歷的屬性。 它不僅遍歷對象自身的屬性,還遍歷繼承的屬性。

如果想得到自身的屬性,需要結合hasOwnProperty方法,在循環內部判斷一下,某個屬性是否為對象自身的屬性。

var person = { name: ’老張’ };for (var key in person) { if (person.hasOwnProperty(key)) { console.log(key); }}

想要得到自身的屬性還有另外兩種方法:

es5:

利用Object.getOwnPropertyNames(obj)

var person = { name: ’老張’ }var props = Object.getOwnPropertyNames(person)

es6:

利用Object.keys(obj)

var person = { name: ’老張’ }var props = Object.keys(person)

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》

希望本文所述對大家JavaScript程序設計有所幫助。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产区一区二区 | 色视频www在线播放国产人成 | 日韩欧美视频 | 中文在线字幕 | 国产va在线观看 | 亚洲国产成人av | 999成人网 | 日韩午夜片 | 日韩午夜片 | 91视频精品| 国产午夜三级 | 在线观看日韩欧美 | 久久成人免费视频 | 亚洲午夜av| 黄色大片一级 | av免费在线观看网站 | 在线视频日韩 | 51成人做爰www免费看网站 | 91在| 一区二区福利视频 | 美日韩在线视频 | 亚洲综合伊人 | 免费在线看a | 天天天干 | 中文字幕少妇 | 欧美a在线观看 | 午夜一级片 | 色婷婷视频在线观看 | 久操不卡 | 欧美日韩在线视频观看 | 91av导航| 日韩毛片免费看 | 亚洲天堂免费视频 | 欧美日日日 | 日日爱影视 | 亚洲精品自拍视频 | 亚洲久久在线 | 天堂中文av| 日韩在线视频免费 | 欧美精品在线观看 | 久久精品导航 |