javascript - 循环数组并打印值

标签 javascript arrays for-loop

我有一个具有以下结构的数组

var Citizen1 = [{lat:null,lng:null,socialSecurityNumber:null}];

我想使用循环来打印每个元素的值,但这对我不起作用:

代码

function animate(index,d) {  

       if (d>eol[index]) {

        marker[index].setPosition(endLocation[index].latlng);       

        if(marker[index].getPosition() == endLocation[index].latlng){
            console.log('Completed'+' '+index);
        }  


        return;
     }

         var p = polyline[index].GetPointAtDistance(d);
         marker[index].setPosition(p);
         updatePoly(index,d);

         timerHandle[index] = setTimeout("animate("+index+","+(d+step)+")", tick);

         citizens1.push({lat:marker[index].getPosition().lat(),lng:marker[index].getPosition().lng(),socialSecurityNumber:global_citizens[index].socialSecurityNumber});

         if(citizens1.length = '500'){           
             console.log('500 records saved');          
             window.clearTimeout( timerHandle);

             for(var i = 0; i < citizens1.length ; i++){


                 console.log(citizens1.lat +',' +citizens1.lng+','+citizens1.socialSecurityNumber); 




             }

             citizens1 = [];
         }

  }

错误

TypeError: citizens1[i].lat is undefined 

最佳答案

citizens1.length = '500' 应为 citizens1.length == 500

还有

console.log(citizens1.lat +',' +citizens1.lng+','+citizens1.socialSecurityNumber); 

应该是

console.log(citizens1[i].lat +',' +citizens1[i].lng+','+citizens1[i].socialSecurityNumber); 

您需要打印数组每个元素的属性,而不是数组本身的属性。

关于javascript - 循环数组并打印值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19352751/

相关文章:

javascript - 动态填充 ExtJS HTML 编辑器

java - 为什么我不能返回数组的值?

r - 在 R 中使用函数 "cat"和 "replicate"

javascript - Stickit 不保存自动完成字段中的值

javascript - 如何将毫秒转换为 Javascript UTC 日期?

javascript - 错误: React Context is unavailable in Server Components

arrays - 确保通过合并 2 个 bigint 数组创建数组中的唯一元素

java - 如何将多维整数数组复制到另一个多维整数数组

java - JPanel 在 For 循环完成之前不会更新或重新绘制

c# - 在继续之前需要循环检查 2 个条件