javascript - 连接 JSON 中的字符串

标签 javascript json string esri arcgis-js-api

我想从 ESRI 几何图形中提取经度和纬度,并将它们连接成一个长字符串(在 API 调用中使用)。

我正在努力解决如何实现这一目标

ESRI 几何文档 ( geometry specs ) 显示了对象的结构,但我的 API 调用需要以下格式的纬度/经度:

long1,lat1,long2,lat2,long3,lat3 ...  long1, lat1

我所要做的就是稍微处理一下长/拉特。根据 ESRI 文档制作一个非常简单的示例

        MyTest = {
                    "rings": [
                        [
                            [-97.06138, 32.837],
                            [-97.06133, 32.836],
                            [-97.06124, 32.834],
                            [-97.06127, 32.832],
                            [-97.06138, 32.837]
                        ]
                    ],
                    "spatialReference": {
                        "wkid": 4326
                    }
                };

        alert(JSON.stringify(MyTest.rings[0]));

会给我环(经度/纬度)(注意第一个长/纬度重复为最后一个长/纬度)

我似乎无法弄清楚如何去掉 [ 和 ] 来创建仅包含经度和纬度的字符串。例如:

myTest2 = MyTest.rings[0];  // get the longitudes and latitudes
myTest3 = JSON.stringify(myTest2);
myTest4 = myTest3.replace("[","");

alert(JSON.stringify(myTest2));

alert(JSON.stringify(myTest4));

替换将去掉其中一个括号,但我无法让它像这篇文章 stack javascript replace 那样进行全局替换。因为我的编程环境全部在 ColdFusion 中,并且我需要模式周围的引号。

有人可以指出我的错误吗?谢谢!

最佳答案

您可以使用 Example 尝试此操作 ( join() ) :

MyTest = { "rings": [...] };
var str = MyTest.rings.join();

结果(在str中)将是:

-97.06138,32.837,-97.06133,32.836,-97.06124,32.834,-97.06127,32.832,-97.06138,32.837

关于javascript - 连接 JSON 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24253201/

相关文章:

javascript - Nextjs - 将 Prop 从自定义 _app.js 传递到 <Navbar> 组件?

javascript - HTML/JavaScript - 如何隐藏链接和光标?

json - 如何使用 YouTube API 提取视频标题和下一页标记?

ios - 使用 SwiftyJSON 解析 JSON

javascript - 禁用组合框,直到从数据库获取值为止

javascript - 如何让 JavaScript 'while' 循环更优雅?

ruby - 我在哪里可以看到我的浏览器发送的 http 请求

python - 正则表达式:匹配同一未知子串的两次出现

c# - string.IsNullOrEmpty() 与 string.NotNullOrEmpty()

java - 如何合并数组的内容?