gpt4 book ai didi

javascript - 转换 Geojson 嵌套数组数据并将其打印为 jquery 中的列表

转载 作者:行者123 更新时间:2023-12-03 08:33:05 26 4
gpt4 key购买 nike

我正在尝试将 GeoJson 数据转换为 jquery 并打印特定值。下面提到的是 JSONcode。

 {

"type": "FeatureCollection",
"metadata":
{
"generated": 1445482204000,
"url": "http://earthquake.usgs.gov/fdsnws/event/1/query?
format=geojson&starttime=2015-01-01&endtime=2015-01-02",
"title": "USGS Earthquakes",
"status": 200,
"api": "1.0.17",
"count": 343
},
"features": [
{
"type": "Feature",
"properties": {
"mag": 2.51,
"place": "21km ESE of Coso Junction, California"
}
}
]
}

下面提到的是我的 JSON 文件,我想打印 jquery 中“features”数组中“properties”中存在的关键“place”。

下面提到的是我的努力:

    $("#button2").click(function(){
$.get("http://earthquake.usgs.gov/fdsnws/event/1/count?
format=geojson&starttime=2015-10-14&endtime=2015-10-21",
function(data,status){
$.each(data.features.properties, function (i, ob) {
$.each(ob, function (ind, obj) {
console.log("key:" + ind + " value:" + obj);
});
});

});
});

HTML:

   <div id="Sesimic_Events">
<button id="button2">Places affected</button>

下面提到的是我遇到的错误

 TypeError: data.features is undefined

任何帮助将不胜感激!

最佳答案

所以你的基本错误是在你的 $.get 方法中,你调用他们的 API 来获取 ' http://earthquake.usgs.gov/fdsnws/event/1/count?format=geojson&starttime=2015-10-14&endtime=2015-10-21 处的计数。 ' 这不会返回您想要的对象,如上所示。你确实想 ping 这个地址:http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&starttime=2015-10-14&endtime=2015-10-21获取他们的实际数据,以便您可以浏览并获取信息......

所以应该是这样的

$("#button2").click(function(){
$.get("http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&starttime=2015-10-14&endtime=2015-10-21",
function(data, status) {
$.each(data.features.properties, function (i, ob) {
$.each(ob, function (ind, obj) {
console.log("key:" + ind + " value:" + obj);
});
});
});
});

但这会明显带来其他错误,您连接的对象实际上是一个数组,因此 data.features = [{},{}.{}];所以 data.features.properties 仍然是未定义的。因为我也将使用这些数据,所以我想我会帮助您按照您期望的方式解析它:

$.get("http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&starttime=2015-10-14&endtime=2015-10-21",
function (data, status) {

$.each(data.features, function(index, object){
$.each(object.properties, function(i,obj){
console.log("key: ", i, " value: ", obj);
});
});

});

最重要的是,如果您从 get 中收到错误,请不要假设数据是正确的,只需执行无害的 console.log(data);确保您的数据按预期传输!

关于javascript - 转换 Geojson 嵌套数组数据并将其打印为 jquery 中的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33272953/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com