![](/img/trans.png)
[英]How to get access to GeoJSON FeatureCollection objects in JavaScript
[英]How to get field from GeoJSON using Javascript
我从服务器获取以下GeoJSON:
[{“ st_asgeojson”:“ {\\” type \\“:\\” Point \\“,\\” coordinates \\“:[-180081.82,5279725.36]}”}]
如何获取坐标字段? 我将GeoJSON存储在geovar变量中
我尝试使用geovar["st_asgeojson"].coordinates
, geovar["st_asgeojson"].coordinates
geovar[0]["st_asgeojson"].coordinates
, geovar[0]["st_asgeojson"]["coordinates"]
但它们似乎未定义。
任何想法? 我知道这很简单,但我坚持下去。 谢谢。
现在, "st_asgeojson"
的值是一个字符串。 您需要先将其解析为JSON,然后才能对其进行访问。 使用map
循环并使用JSON.parse
解析"st_asgeojson"
的值
const geovar = [{"st_asgeojson":"{\\"type\\":\\"Point\\",\\"coordinates\\":[-180081.82,5279725.36]}"}] const rs = geovar.map(e => { e["st_asgeojson"] = JSON.parse(e["st_asgeojson"]) return e }) console.log(rs[0]["st_asgeojson"]["coordinates"]) console.log(rs)
好的,我终于解决了这种问题:
[{“ st_asgeojson”:“ {\\” type \\“:\\” Point \\“,\\” coordinates \\“:[-180081.82,5279725.36]}”}]
是内部带有GeoJSON的JSON。 在解析GeoJSON之前,我必须从已经解析的JSON中获取GeoJSON字符串。 唯一必要的指示是:
var obj = JSON.parse(geovar[0]["st_asgeojson"]);
var coordinates = obj.coordinates;
从服务器获取的是JSON字符串数据,如果要解析,请首先使用JSON.stringify()函数创建JSON。 希望能解决您的问题。 之后,您可以轻松地根据需要解析数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.