2014-08-27 70 views
1

我有此JSON如何获得一个嵌套的JSON数组的长度在Javascript

var data = 
[ 
    { 
     "new": [ 
      { 
       "screen": "SCR2", 
       "time_of_order": "20:08:58", 
       "status": "Viewed", 
       "item_id": "9,6,5,4", 
       "quantity": "1", 
       "vendor_id": "1", 
       "order_id": "140827080458858O1O1", 
       "json_value": [ 
        { 
         "SurCharges": "50" 
        }, 
        { 
         "SurCharges": "50" 
        }, 
        { 
         "SurCharges": "50" 
        } 
       ], 
       "seat_number": "D12" 
      } 
     ] 
    } 
]; 

如何获得一个嵌套的数组的长度命名json_value?

这是我的jsfiddle

http://jsfiddle.net/03zw041h/2/

使用

警报(data.new.json_value.length)审判;

但控制台报告错误

Uncaught TypeError: Cannot read property 'json_value' of undefined 

回答

2

你有一些阵中有

data[0].new[0].json_value.length 

FIDDLE

+0

优秀的工作精湛,非常感谢你 。 – user3674364 2014-08-27 15:03:53

+0

雅打败了我,下次我放弃小提琴:P – Jack 2014-08-27 15:04:29

1

你已经在那里嵌套数组作为,所以你必须考虑到那些。

http://jsfiddle.net/03zw041h/4/

data[0].new[0].json_value.length

+0

非常感谢,但我面临的问题,当涉及到我的项目中的实时数据(更多嵌套数组存在),所以是否有可能得到在json_value下存在的SurCharges计数? – user3674364 2014-08-27 15:11:04

+0

如果你问如何遍历这些值并将它们加在一起,你最好发布另一个问题,或者只是谷歌数组和循环。 – Jack 2014-08-27 15:15:21

0

你只有1元对象的数组中的每一个,所以也许你不希望/需要他们为数组:

var data = 
{ 
    "new": 
    { 
     "screen": "SCR2", 
     "time_of_order": "20:08:58", 
     "status": "Viewed", 
     "item_id": "9,6,5,4", 
     "quantity": "1", 
     "vendor_id": "1", 
     "order_id": "140827080458858O1O1", 
     "json_value": 
     [ 
      { 
       "SurCharges": "50" 
      }, 
      { 
       "SurCharges": "50" 
      }, 
      { 
       "SurCharges": "50" 
      } 
     ], 
     "seat_number": "D12" 
    } 
};