91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2020-08-21 22:30:32 來源:腳本之家 閱讀:161 作者:wangliang_001 欄目:web開發

本文實例講述了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 循環有兩個使用注意點

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

如果想得到自身的屬性,需要結合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程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

株洲县| 沂源县| 峨眉山市| 天镇县| 新津县| 堆龙德庆县| 开原市| 葫芦岛市| 龙泉市| 古田县| 四平市| 东港市| 江城| 石棉县| 栾川县| 福海县| 乐陵市| 昌黎县| 唐河县| 彰化市| 济宁市| 舒城县| 杂多县| 克什克腾旗| 镇康县| 贵德县| 邢台市| 伊春市| 老河口市| 昭通市| 凉山| 赣榆县| 仙游县| 思南县| 普宁市| 酒泉市| 离岛区| 崇州市| 项城市| 梅河口市| 通化县|