2012-08-04 50 views
0

我要求twitter以获取我的用户的所有位置,但然后当我尝试将它们放入我的数组时,所有对象都获得相同的位置($的最后位置。每)。不能将所有的位置值保存到我的阵列

它就像我不能循环所有的数组值,因为each.function.i也试图把每个.loop之外,但同样的事情发生。有人可以告诉我如何解决这个问题,谢谢!

function lookup_locations(user_ids){ 
     $.getJSON("http://api.twitter.com/1/users/lookup.json?user_id="+user_ids+"&callback=?", 
     function(data){ 

    $.each(data, function(i, item){ 
     var location=item.location; console.log(location); 
     for(var i = 0; i < array.length;i++) { 
     array[i].location = location; 
          } 
      }); 

    console.log(array); 
    });//get.json 

    }//lookup function 
+0

您应该重命名变量i在for循环不与。每个功能 – Samson 2012-08-04 15:50:07

+0

你指的是变量'array'混合 - 'array.length ...阵列[1]。位置“ - 我没有看到被宣布或设置在任何地方。 – JMM 2012-08-04 16:00:07

回答

1

尝试删除循环; i正在递增$。每个因此您不需要它。

var array = []; 
$.each(data, function(i, item) { 
    var location = item.location; 
    array[i].location = location; 
});