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

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

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

瀏覽:109日期: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
相關文章:
主站蜘蛛池模板: 国产精品精品久久久 | 亚洲激情在线观看 | 视频一区二区三区四区五区 | 欧美一级片在线观看 | 亚洲精品乱码久久久久v最新版 | 国产亚洲精品久久久优势 | 免费啪啪| 欧美精品1区2区3区 免费黄篇 | 中文字幕在线观看一区 | 国产目拍亚洲精品99久久精品 | 黄色三级毛片 | 又黑又粗又长的欧美一区 | 精品国产乱码久久久久久久久 | 精品视频一区二区 | 在线观看视频中文字幕 | 欧美成人自拍 | 91最新入口| 久久夜色精品国产 | 欧美一区二区三区电影 | 国产在线观看 | 欧美成人一级视频 | 久久乐国产精品 | 国产欧美精品一区二区三区 | 黄色网一级片 | 国产一区二区三区在线观看免费 | 婷婷五月色综合香五月 | 国产高清在线精品一区二区三区 | 美女黄网 | 国产免费拔擦拔擦8x高清 | 亚洲精彩视频在线观看 | 观看av| 欧美黄色片 | 亚洲免费在线视频 | 美日韩免费 | 久久伊人一区二区 | 福利片在线观看 | 一区二区三区电影在线观看 | 欧美影院 | 中文字幕成人在线 | 香蕉一区| 欧美黄色网络 |