2015-03-31 491 views
0

我试图获取数组的大小,但每次控制台都说我未定义,并且不知道为什么。在Angular-JS中获取数组大小

.success(function (data) { 
      console.log('Random-Suffix:' + suffix); 
      $scope.builds = new X2JS().xml_str2json(data); 

      var size = $scope.builds.length; 
      console.log('Size: ' + size); 



      $timeout(function() { 
       $scope.exampleLiveDataChange(); 
      }, 3000); 
     }) 
+0

'console.log($ scope.builds)'的输出是什么? – Manwal 2015-03-31 08:48:16

+0

尝试'console.log(typeof($ scope.builds))''你很可能会看到'$ scope.builds'不是一个数组!您可能需要输出它并在其中查找您的数组; – Fourat 2015-03-31 09:07:20

回答

2

从我在读X2JS documentation

<instance>.xml_str2json - Convert XML specified as string to JSON 

也许建立不是一个数组,而是一个对象。如果对象包含这样一个数组:

var test = {one : 'one' , two : [1,2,3]}; 

如果你这样做:

test.length; 

你得到:

undefined 

如果你这样做:

test.two.length; 

然后你会得到:

3 
+0

是的,你说得对,谢谢。 你知道是否有办法获得对象内数组的大小? – Vistor 2015-03-31 08:52:20

+0

是的,很简单。对象的结构是什么? – namelivia 2015-03-31 08:52:58

+0

它的工作原理,谢谢 – Vistor 2015-03-31 09:08:23