[英]How to delete an extra " in GEOjson (Javascript)
我試圖操縱一個對象 GEOjson 以在我的地圖 OpenLayers 中顯示它。 但是我的 GEOjson 無效。 首先,在我的 API 中,我請求我的數據庫恢復幾何,然后我通過 GEOjson.parse 解析它: GeoJSON.parse(data, {GeoJSON : 'geometry'});
數據如下所示:
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": "{\"type\":\"MultiPolygon\",\"coordinates\":[[[[0.699526704561417,49.5855766259652],[0.699132813373672,49.5855472259388],[0.698829663954256,49.5852457878428],[0.698308423811369,49.5855523688003],[0.699127661396565,49.5862481964213],[0.699752271011022,49.5859030239836],[0.699526704561417,49.5855766259652]]]]}",
"properties": {
"libgeo": "Bois-Himont",
"nature": "Parcelle bâtie"
}
},
{
"type": "Feature",
"geometry": "{\"type\":\"MultiPolygon\",\"coordinates\":[[[[0.696220319484454,49.581274516207],[0.696272071456392,49.5820438187077],[0.697147417334422,49.5815673912038],[0.697102005023975,49.5814546891317],[0.697047441685103,49.5812624281067],[0.6969844037675,49.5812621313821],[0.696220319484454,49.581274516207]]]]}",
"properties": {
"libgeo": "Bois-Himont",
"nature": "Parcelle bâtie"
}
}, etc...
然后在我的 script.js(該文件旨在顯示地圖和 GEOjson)中,由於 JSON.parse,我解析了數據,但線幾何無效,因為有一個額外的" 並且類型和坐標被包圍經過 ”。
如何刪除額外的“並刪除”類型和坐標?
當幾何體應該是一個對象時,它是一個字符串。 在第一次解析之后,您將需要遍歷特征並將每個幾何字符串解析為一個對象。
var myGeoJSON = JSON.parse(myText);
myGeoJSON.features.forEach( function(feature) { feature.geometry = JSON.parse(feature.geometry) });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.