Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript-如何访问成功块之外的对象_Javascript_Arrays_Ajax_Object - Fatal编程技术网

Javascript-如何访问成功块之外的对象

Javascript-如何访问成功块之外的对象,javascript,arrays,ajax,object,Javascript,Arrays,Ajax,Object,我需要在AJAX修改后访问一个对象,但当我试图打印它时,它会显示一个空值 我怎样才能解决这个问题 $(document).ready(function(){ var arrayLength = whatever...; var myArray = []; for (var i = 0; i < arrayLength; i++) { $.ajax({ myArray: myArray, type: 'GET'

我需要在AJAX修改后访问一个对象,但当我试图打印它时,它会显示一个空值

我怎样才能解决这个问题

 $(document).ready(function(){
   var arrayLength = whatever...;
   var myArray = [];

   for (var i = 0; i < arrayLength; i++) {

       $.ajax({
           myArray: myArray,
           type: 'GET',
           dataType: 'jsonp',
           data: {},
           url: "https://api....",
           error: function (jqXHR, textStatus, errorThrown) {
               console.log(jqXHR)
           },
           success: function (response) {
               var name = response.data.name;
               var url = response.data.url;
               for(var x = 0; x < 5; x++) {
                   var pin = {name: name, url:url};
                   myArray.push(pin);
               }
           },
           async: false
       });
   }

   // I want to print myArray here
});

什么是myArray中的allPins push pin不在allPins和remove myArray中:myArray,myArray是如何使用的?看起来它没有被访问过all@RobH,他使用的是async:false,所以我不确定链接页面是否相关。将myArray属性添加到$.ajax参数对象的预期效果是什么?@ikegami-啊,是的,我下意识地说。我没看到它潜伏在底部!此时“myArray”不会仍然没有使用async:true填充吗?将async:false更改为async:true将导致打印速度过快。抱歉,这是一个输入错误!当我将async:false更改为async:true时,它仍然显示一个空数组
 $(document).ready(function(){
   var arrayLength = whatever...;
   var myArray = [];

   for (var i = 0; i < arrayLength; i++) {

       $.ajax({
           //myArray: myArray,
           type: 'GET',
           dataType: 'jsonp',
           data: {},
           url: "https://api....",
           error: function (jqXHR, textStatus, errorThrown) {
               console.log(jqXHR)
           },
           success: function (response) {
               var name = response.data.name;
               var url = response.data.url;
               for(var x = 0; x < 5; x++) {
                   var pin = {name: name, url:url};
                   //allPins.push(pin);
                   myArray.push(pin);
               }
           },
           async: false
       });
   }

   // I want to print myArray here
});