2010-01-08 52 views
29

我有這樣的對象:如何訪問數字屬性?

var myObject = { '0' : 'blue' }; 

現在,當我嘗試訪問鍵的值「0」,如:

myObject.0 

...我收到一個錯誤。 (也許這不是正確的方法?)

我如何訪問一個數字鍵(如上所述)的值?

+7

順便說一句,這不是一個JSON對象,這是一個* JavaScript的*目的。 JSON只是一種基於JavaScript語法的數據存儲格式。 – 2010-01-08 10:27:08

回答

67

這應該工作:

myObject["0"] 

myObject["propertyName"]myObject.propertyName替代語法)。

你得到的錯誤,因爲在JavaScript中,標識符不能以數字開頭。從Variables頁面在Mozilla Developer Centre

一個JavaScript標識符必須以字母開頭 ,下劃線(_),或 美元符號($);後續字符 也可以是數字(0-9)。由於 JavaScript區分大小寫,字母 包括字符「A」到「Z」 (大寫)和字符「a」 到「z」(小寫)。

+11

屬性*可以*以數字開頭。這只是「。」。語法只允許點後面的標識符。 – Alsciende 2010-01-08 10:36:37

+0

@Alsciende:啊,謝謝!我在我的回答中更正了相關信息。 – 2010-01-09 01:19:49

1

,如果你有一個像

`"rain": { 
      "3h": 0 
     },` 

然後數據你可以簡單地訪問它rain['3h']