2011-07-19 30 views
1

此行數組對象:怎麼看的JavaScript

alert("<b>feeds.entries["+j+"] is </b>=>"+feeds.entries[j]+"<br>"); 

給出了這樣的結果:

<b>feeds.entries[0] is </b>=>[object Object]<br> 

我想打印物體的列表,以便我可以使用它們。

這個陣列被稱爲例如:

var entry=feeds.entries[i]; 

和entry.title,打印圖像的標題。我猜「標題」,並希望看到所有其他對象feeds.entries []包含,但我上面的警報,打印「[對象對象]」。腳本是zRSSFeed,它是一個RSS解析器。我試圖解析Menalto Gallery 2(或g2)RSS提要。

+2

後,您構建供稿和條目對象的代碼。 – Jeroen

回答

1
function join(obj) { 
    var ret = ''; 
    for (var i in obj) { 
     if (!obj.hasOwnProperty(i)) continue; 
     ret += i + ': ' + obj[i] 
    } 
    return ret; 
} 

這樣稱呼它:

alert("<b>feeds.entries["+j+"] is </b>=>"+join(feeds.entries[j])+"<br>"); 

DEMO

1

我建議你下載並安裝Firebug,然後讀取節上Firebug and logging。它會告訴你如何登錄到控制檯。

我還其顯示在浮動窗口的郵件的YUI 2 Logger的風扇。無論哪種方式,使用alert是一種減慢發展速度並使自己瘋狂的肯定方式。發展應該比這更有趣。

順便說一句,看看所述YAHOO.lang.dump()方法,其示出了什麼是對象的內部。如你發現的那樣,[Object object]不是很有用。

1

,如果你指的是在瀏覽器控制檯使用它們,使用

for (var i==0; i<feeds.entries.length; i++){ 
    console.log(feeds.entries[i]); 
} 

否則,請解釋清楚你想要什麼,以及如何你要代表你的 對象或其屬性。

1

嘗試輸出它作爲JSON:

alert("<b>feeds.entries["+j+"] is </b>=>"+JSON.stringify(feeds.entries[j])+"<br>"); 

我不明白你爲什麼在alert的標籤,雖然,因爲他們什麼都不做。

alert("feeds.entries["+j+"] is =>" + JSON.stringify(feeds.entries[j])); 

但是,如果您使用的是Chrome,我建議你乾脆console.log對象(S)和打通開發者控制檯來查看對象。

+0

我不知道怎麼找,激活,使用等方面的「控制檯日誌」 – sandraqu

+1

如果你在Mac上,'是Cmd + Alt + j'。 Windows可能是'Ctrl-Alt-j'。否則,只需轉到查看 - >開發人員 - > Javascript控制檯。 –

2

您不能將字符串和對象呈現在一起,因爲它們是不同的類型。分別打印對象alert(feeds.entries[j])。 我認爲這是很好用console.log,而不是alert進行調試。