2014-01-08 142 views
0

如何在對象的數組解析特定對象的值,對象屬性具有特殊字符的數組:解析對象的有特殊字符

var mycars = new Array(); 

var obj = {"x-h": "4", "y": "1"}; 

mycars.push(obj); 

document.write(mycars[0].a-h + "<br>"); 
+0

你會做得很好,包括在你的問題的身體有一定的描述,而不是隻在您的標題 –

回答

1

訪問屬性,如下所示(使用引號):

document.write(mycars[0]["x-h"] + ""); 

另請注意,您使用「ah」而不是「xh」。

+0

感謝johnnycardy – user3174834

0

可以使用括號[]從對象中檢索值。

如果您的字符串表達式是合法的JavaScript名稱而不是 保留字,則「。」符號可以用來代替。

「x-h」不是合法的Javascript名稱。相反,你可以使用x_h,然後你可以使用「。」直接符號訪問:

document.write(mycars[0].x_h + ""); 
+0

*「如果你的字符串表達式是合法的JavaScript的名字,而不是保留字,那麼可以使用「。」符號。「*如果屬性名稱是保留字,則甚至可以使用點符號。例如:'var x = {if:42};警報(x.if);'。問題是一些(尤其是較老的)瀏覽器會遇到問題。 –

+0

是的,你是對的菲利克斯,但它不是一個好的做法。 –