如何遍历 JSON 对象以适合 JavaScript 数组
How to loop through a JSON object to fit inside a javascript array?
我正在尝试以适合GoMap声明的方式转换带有谷歌地图标记(使用CMS中的数据生成的)的JSON对象。我正在尝试从我的 CMS 中获取多个标记以将它们放置在地图上。
我将尝试在下面详细解释它:
我遍历标记并创建一个编码为 json 的数组:
echo "<script>var googlePlaces = " . json_encode($googlePlaces) . ";</script>";
然后我得到以下对象:
[Object { title="Est. Avenida de Mayo", lat="-34.60844234174374", lon="-58.37414860725403"}, Object { title="Café Tortoni", lat="-34.60871608361115", lon="-58.378823697566986"}]
我所需要的只是把它放在这里:
$(document).ready(function() {
$("#map").goMap({
latitude: config.location_lat,
longitude: config.location_lon,
zoom: 15,
mapTypeControl: false,
maptype: 'ROADMAP',
navigationControl: true,
navigationControlOptions: {
position: 'TOP_LEFT',
style: 'SMALL'
},
markers: [{
// Multiple markers here!
latitude: XXXXXX,
longitude: XXXXXXX,
html: {
content: 'XXXXXXX'
},
}]
});
}
}); // end
我有点被困在这里,我知道我需要以某种方式遍历 JSON 对象并将其放置在 GoMap 脚本中的标记属性中。这是对的吗?谁能指出我正确的方向?
尝试这样的事情来迭代您的 JSON 对象元素并将其推送到数组中。
var markersArray = new Array();
$.each(googlePlaces, function(i, itemPlace) {
var obj = {
latitude: itemPlace.lat,
longitude: itemPlace.lon,
html: { content: itemPlace.title }
};
markesArray.push(obj);
});
之后在gomap代码中使用标记数组,如下所示
$("#map").goMap({
// your existing stuff
markers: markersArray
});
祝你好运!!
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 将Javascript数组发送到控制器ASP.NET MVC
- JavaScript数组包含一个值
- 将JavaScript数组传递给函数
- javascript:数组循环
- 将数据存储在javascript数组中以供进一步使用
- 在Javascript数组中查找绝对最大值
- JavaScript数组优化以提高性能
- 在javascript数组中分散数字
- 如何发送分配列表<字符串>到JavaScript数组或可枚举对象
- Javascript数组动态
- javascript数组元素是否知道其封闭数组
- 将 JSON 数组解析为 JavaScript 数组
- 将Transform和Instance Variable转换为对象的JavaScript数组
- 使用Web Html表单创建Javascript数组
- 从重复的javascript数组结果集中只获取一行
- 如何为Javascript数组()的使用准备PHP变量
- Javascript数组和函数
- 为DataTables aoColumnDefs创建JavaScript数组(JSON格式)