// 示例的 JSON 字符串
var jsonString = '{"field1": "value1", "field5": [[121,31], [121,31.15], [121,31.15], [121,31]]}';
- 解析JSON数据,并转换成WKT,注意此处WKT面数据的话需要闭合
// 解析 JSON 字符串
var jsonData = JSON.parse(jsonString);
// 获取 field5 的二维数组
var coordinatesArray = jsonData.field5;
// 转换成 WKT 格式
function convertToWKT(coordinates) {
var wkt = "POLYGON ((";
coordinates.forEach(function(coord, index) {
wkt += coord[0] + " " + coord[1];
if (index < coordinates.length - 1) {
wkt += ", ";
}
});
wkt += coordinatesArray[0][0] + " " + coordinatesArray[0][1];
wkt += "))";
return wkt;
}
// 将数组转换为 WKT 格式的字符串
var wktString = convertToWKT(coordinatesArray);
// 将 WKT 字段添加到 JSON 对象中
jsonData.wkt = wktString;
// 创建新的 JSON 文件内容
var newJsonString = JSON.stringify(jsonData, null, 2); // null, 2 是格式化 JSON 输出
// 生成并下载 JSON 文件
function downloadJson() {
var blob = new Blob([newJsonString], {type: "application/json"});
var url = URL.createObjectURL(blob);
var a = document.createElement('a');
a.href = url;
a.download = 'output.json';
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}