2013-07-22 67 views
1

我需要從以下數組訪問「國家」的價值 -閱讀從JSON數組中的值節點的.js

data = 
{ 
    Images: 
    [ 
     { 
      ProductCodes: [], 
      BlockDeviceMappings: [Object], 
      Tags: [], 
      ImageId: 'ami-75301c', 
      ImageLocation: '54696560/Test Image 3', 
      State: 'available',  
      VirtualizationType: 'pavirtul', 
      Hypervisor: 'xen' 
     } 
    ], 
    requestId: '2eb809d3-7f82-4142-b5d1-6af3' 
} 

當我嘗試data.Images["State"]data.Images.State我得到了一個未定義。

感謝

+1

好,這意味着一切工作正常。 'Images'引用的數組沒有'State'屬性。如果你乾淨地縮小你的結構,事情可能會變得清晰。 –

+0

如何訪問狀態值?我需要'可用'回來。 – Fox

+1

好吧,'圖像'是引用一個數組,而一個數組是一個有序的數據集合,可以通過基於0的索引訪問。 –

回答

3

圖像映射到存儲的對象,所以你必須指定所需的項目的索引的數組。嘗試data.images [0] [「狀態」]。

+0

謝謝你.... :) – Fox

+0

你應該檢查是否有任何數組元素之前獲取該數組中的狀態項。一個數組* *可能是空的。 – Joe

-1

data.image[0].state訪問狀態。你的方法是錯誤的,因爲在image裏面,你需要在兩個方括號內的索引,image屬性是一個數組。