GeoJSON是一種對地理數(shù)據(jù)進(jìn)行編碼和傳輸?shù)拈_放格式。它可以保存點(diǎn)、線、面等幾何對象和屬性數(shù)據(jù)。在Web地圖開發(fā)中經(jīng)常遇到的情況是需要將GeoJSON格式轉(zhuǎn)換為普通的JSON格式,方便在前端進(jìn)行處理和展示。
下面是使用JavaScript將GeoJSON轉(zhuǎn)換為JSON格式的示例代碼:
function geoJSONtoJSON(geoJSON) { var features = geoJSON.features; var json = []; for (var i = 0; i< features.length; i++) { var feature = features[i]; var properties = feature.properties; var geometry = feature.geometry; var type = geometry.type; var coordinates = geometry.coordinates; var item = {}; item.type = type; item.coordinates = coordinates; for (var key in properties) { if (properties.hasOwnProperty(key)) { item[key] = properties[key]; } } json.push(item); } return json; }
這段代碼會(huì)將GeoJSON中的每一個(gè)Feature轉(zhuǎn)換為一個(gè)常規(guī)的JSON對象,并將原本作為Feature屬性的屬性數(shù)據(jù)提取出來添加到JSON對象中。該函數(shù)接受一個(gè)GeoJSON對象作為參數(shù),返回一個(gè)常規(guī)的JSON數(shù)組。
以上就是將GeoJSON轉(zhuǎn)換為JSON的簡單介紹和代碼實(shí)現(xiàn)。在使用時(shí)需要注意GeoJSON對象的結(jié)構(gòu)和轉(zhuǎn)換后的JSON數(shù)組的結(jié)構(gòu)是否符合自己的需求。