0

我的代码

 $.getJSON('/load4',
    function (data) {
        for (var i = 0; i < data.length; i++) {
            var counter = data[i];
            datas.push([counter.Id, counter.login.substr(0, 25),'3', counter.hash , 'MA']); 
        }
    });
console.log("Datas " + datas);

我正在尝试像 [[a,b],[a,c]] 那样填充我的数组,但不能。

datas[i] = [counter.Id, counter.login.substr(0, 25),'3', counter.hash , 'MA'];

也不行。

4

3 回答 3

0

你必须放在console.log你的里面function而不是外面。

$.getJSON('/load4',
  function(data) {
    var datas = [];
    for (var i = 0; i < data.length; i++) {
      var counter = data[i];
      datas.push([counter.Id, counter.login.substr(0, 25), '3', counter.hash, 'MA']);
    }
    console.log("Datas " + datas);
  });
于 2017-12-05T10:49:16.797 回答
0

那是因为您正在异步加载 JSON 。这意味着回调函数之前log的运行作为参数传递给.getJSON

于 2017-12-05T10:50:23.227 回答
-1

您必须先创建一个变量数据。

 var datas =[];   
 $.getJSON('/load4',
        function (data) {
            for (var i = 0; i < data.length; i++) {
                var counter = data[i];
                datas.push([counter.Id, counter.login.substr(0, 25),'3', counter.hash , 'MA']); 
            }
        });
console.log("Datas " + datas);
于 2017-12-05T10:45:30.417 回答