JavaScript中遍歷對(duì)象的property的3種方法介紹
在JavaScript中,可以用三種方法來(lái)遍歷對(duì)象的property:
1.for/in??梢允褂胒or/in語(yǔ)句遍歷對(duì)象自身的property(Own Property)及其從原型對(duì)象處繼承的property,只有enumerable的property才會(huì)被遍歷到。
2.Object.keys()??梢詫?duì)象作為參數(shù)傳入Object.keys(),Object.keys()語(yǔ)句將返回由所有property名稱字符串所組成的數(shù)組。Object.keys()語(yǔ)句僅返回對(duì)象自身的(Own Property)且enumerable的property。該語(yǔ)句僅在ECMAScript 5標(biāo)準(zhǔn)中有效。
3.Object.getOwnPropertyNames()。可以將對(duì)象作為參數(shù)傳入Object.getOwnPropertyNames(),與Object.keys()一樣,該語(yǔ)句將返回由所有property名稱字符串所組成的數(shù)組。與Object.keys()不同的是,Object.getOwnPropertyNames()語(yǔ)句將返回所有對(duì)象自身的property(Own Property),而不論其是否為enumerable。該語(yǔ)句僅在ECMAScript 5標(biāo)準(zhǔn)中有效。
綜合上述信息,總結(jié)成圖如下:

實(shí)驗(yàn):
var o = {x:1, y:2};
var a = Object.create(o);
a.z = 3;
for(p in a){
console.log(p);
}//z x y
console.log(Object.keys(a));//["z"]
console.log(Object.getOwnPropertyNames(a));//["z"]
相關(guān)文章
將json當(dāng)數(shù)據(jù)庫(kù)一樣操作的javascript lib
使用javascript操作JSON的類庫(kù)TAFFY DB,具體介紹了:查詢數(shù)據(jù)、添加數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù)。2013-10-10
JavaScript cookie與session的使用及區(qū)別深入探究
這篇文章主要介紹了Java中Cookie和Session詳解,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-10-10
js控制一個(gè)按鈕是否可點(diǎn)擊(可使用)disabled的實(shí)例
下面小編就為大家?guī)?lái)一篇js控制一個(gè)按鈕是否可點(diǎn)擊(可使用)disabled的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
用表格輸出1-1000之間的數(shù)字實(shí)現(xiàn)代碼(附特效)
本文將介紹下用表格輸出1-1000之間的數(shù)字同時(shí)附有特效,感興趣的朋友可以參考下哈,希望對(duì)你有所幫助2013-04-04
bootstrap 通過(guò)加減按鈕實(shí)現(xiàn)輸入框組功能
這篇文章主要介紹了bootstrap 輸入框組 通過(guò)加減按鈕來(lái)增加刪除內(nèi)嵌輸入框組,當(dāng)我點(diǎn)擊 + 按鈕時(shí),會(huì)添加一行輸入框組;當(dāng)點(diǎn)擊 - 按鈕時(shí),會(huì)刪除這一行輸入框組。具體實(shí)現(xiàn)代碼大家參考下本文2017-11-11
js實(shí)現(xiàn)Select頭像選擇實(shí)時(shí)預(yù)覽代碼
這篇文章主要介紹了js實(shí)現(xiàn)Select頭像選擇實(shí)時(shí)預(yù)覽代碼,涉及javascript動(dòng)態(tài)遍歷及設(shè)置select選項(xiàng)的技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-08-08
Typescript中的數(shù)據(jù)類型實(shí)例總結(jié)
ts中數(shù)據(jù)類型的定義是重點(diǎn)之一,所以必須明確ts有哪些數(shù)據(jù)類型,下面這篇文章主要給大家介紹了關(guān)于Typescript中數(shù)據(jù)類型的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-03-03
functional繼承模式 摘自javascript:the good parts
javascript:the good parts 書(shū)中Inheritance部分講到了一種functional的繼承方式, 具體這個(gè)functional該如何翻譯,就不是很清楚了, 就直接意會(huì)一下吧2011-06-06

