2

我正在研究一个geodjango项目,需要使用javascript迭代来自服务器的geojson响应,这样我就可以将它传递到谷歌地图上。我只需要从 json 迭代返回的坐标“25.92”和“-80,...”。我尝试了各种脚本都没有成功,希望有人能给我一个快速的答案。

{ "crs" : null,
  "features" : [ { "geometry" : { "coordinates" : [ 25.924292000000001,
                -80.124313999999998
              ],
            "type" : "Point"
          },
        "id" : 1,
        "properties" : {  },
        "type" : "Feature"
      } ],
  "type" : "FeatureCollection"
}
4

2 回答 2

4

我会做这样的事情:

var latLons = obj.features.map(function (o) {
    return {lat: o.geometry.coordinates[0], lon: o.geometry.coordinates[1]};
});

如果您可以有多个 latLong,这是有道理的。这将给出一个对象数组,其中定义了您所期望的 lat 和 lon。如果你只关心第一个,那就做latLons[0].

于 2012-11-19T21:36:55.123 回答
3

其中 'obj' 是表示此对象的变量:

像这样访问

obj.features[0].geometry.coordinates;

像这样分配

var lat = obj.features[0].geometry.coordinates[0],
     lon = obj.features[0].geometry.coordinates[1];
于 2012-11-19T21:33:04.560 回答