2012-01-29 13 views
0

我正在學習DOM集合。我使用的教材有以下JavaScript代碼通過鏈接集合中的元素進行迭代:DOM作品集:如何瀏覽鏈接集合中的內容和未知項目

var linksList = document.links; 
for (var i = 0; i < linksList.length; ++i) 
{ 
    ... 
    [code to print links to HTML paragraph] 
    ... 
} 

只是爲了好玩,我改變了循環到for ... in風格循環:

for (var i in linksList)

後來發現我的腳本現在產生了比以前多3個鏈接,並且每個鏈接都是「未定義的」。

1)這些未定義的鏈接是什麼,爲什麼它們在for ... in循環中佔了,但不是由document.links.length控制的循環? (顯然length比包含3個神祕鏈接的「真實」長度短3)

2)如何使用開發人員工具查看集合?如果我能做到這一點,也許我可以自己回答上一個問題。

謝謝!

回答

1

實際上,document.links返回一個類似數組的對象,雖然提供了length屬性和支持索引,但具有其他屬性,它們出現在for in循環中。