【问题标题】:why my function is not do for loop?为什么我的函数不是 for 循环?
【发布时间】:2013-10-29 09:25:28
【问题描述】:

在我的代码中,如果我单击搜索功能中的程序按钮。 在搜索功能中,我有 2 个 for 循环。第一个循环是 data.length 的循环,第二个循环是 data.parameter.length 的循环。问题是 javascript 不是每个 for 循环我不知道为什么 javascript 不能这样做这是我的代码:

function searchData(){
  console.log('in function');
    for(var z = 0;z < cloudData.length;z++){
      console.log(z);
      for(var x = 0;x < cloudData.items[z].coordinates[x].length;x++){
        console.log(x);
        if(google.maps.geometry.poly.containsLocation(cloudData.items[z].coordinates[x],poly) == true){
              console.log(true);
              setAllMap(map,'polygon',z);
              return
        }else{
         console.log(false);
        }    
      }     
    }
  deleteDrawings('Userpolygon');
} 

**参数coordinate[x]是latLng类型,poly是google map api中的polygon类型

程序是做console.log() 和deleteDrawings('Userpolygon');功能,但它没有做循环 console.log(z);不要'显示console.log(x);不显示。感谢您的每一个想法。

【问题讨论】:

  • cloudData 有...数据吗?在 for 之前做一个console.log('CD:', cloudData)
  • 是的 cloudData 有数据
  • 你确定在for循环之前它是一个带有length &gt; 0的数组吗?这是不记录 z 的唯一合理解释。
  • 抱歉,我看到 cloudData.length = undefind 但 cloudData.items.length 是有值的

标签: javascript google-maps-api-3 for-loop while-loop


【解决方案1】:

好的,我已经解决了我的问题。我将cloudData.length 更改为cloudData.items.length 并将cloudData.items[z].coordinates[x].length 更改为cloudData.items[z].coordinates.length

感谢大家阅读我的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    • 2019-01-27
    相关资源
    最近更新 更多