You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从嵌套JSON提取特定数据?jQuery获取嵌套站点名称遇阻

搞定jQuery提取嵌套JSON站点名称的问题

我来帮你解决这个问题!你现在能打印整个JSON对象却拿不到具体的站点名称,大概率是层级没找对或者JSON还没转成可操作的JS对象,我给你一步步捋清楚:

首先先假设你的嵌套JSON结构是类似这样的(如果和你的实际结构不一样,你只需要对应调整层级就行):

{
  "data": {
    "siteList": [
      {
        "name": "博客园",
        "url": "cnblogs.com"
      },
      {
        "name": "GitHub",
        "url": "github.com"
      }
    ]
  }
}

第一步:确认JSON已经转成JS对象

如果你是从接口直接拿到的字符串格式的JSON,得先转成JavaScript对象才能操作:

// 比如接口返回的是字符串jsonStr
const jObject = JSON.parse(jsonStr);
// 要是用jQuery的$.getJSON方法请求接口,它会自动帮你把JSON字符串转成对象,直接用就行
$.getJSON('你的接口地址', function(jObject) {
  // 这里直接操作jObject
});

第二步:找对层级,遍历提取站点名称

比如上面的示例里,站点列表在jObject.data.siteList这个数组里,你需要遍历这个数组才能拿到每个站点的名称:

// 先打印确认层级是否正确,避免拼写错误
console.log(jObject.data.siteList);

// 假设你用来展示的div的id是siteContainer
const $siteContainer = $('#siteContainer');
// 用jQuery的each方法遍历数组
$.each(jObject.data.siteList, function(index, siteItem) {
  // 这里的siteItem就是数组里的每个站点对象,提取name字段
  const siteName = siteItem.name;
  // 把名称插入到div里,比如创建一个p标签或者span
  $siteContainer.append(`<p>${siteName}</p>`);
});

调试小妙招

要是还是拿不到,你可以一步步打印层级,快速定位问题:

// 先打印最外层对象
console.log(jObject);
// 再打印下一层
console.log(jObject.data);
// 直到找到站点数组
console.log(jObject.data.siteList);

这样就能很快发现是层级少了一层,还是字段名拼写错了(比如你写的siteItem.siteName但JSON里是siteItem.name)。

给你一个完整的可运行示例,你替换成自己的JSON数据就能用:

<div id="siteContainer"></div>

<script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
<script>
// 模拟你的嵌套JSON数据
const mockJson = {
  "data": {
    "siteList": [
      {"name": "博客园", "url": "cnblogs.com"},
      {"name": "GitHub", "url": "github.com"},
      {"name": "Stack Overflow", "url": "stackoverflow.com"}
    ]
  }
};

// 页面加载完成后执行
$(function() {
  const $container = $('#siteContainer');
  // 遍历站点数组
  $.each(mockJson.data.siteList, function(i, item) {
    // 把站点名称添加到div中
    $container.append(`<div class="site-name">${item.name}</div>`);
  });
});
</script>

只要对应好你自己的JSON层级和字段名,就能顺利提取并显示站点名称啦!

内容的提问来源于stack exchange,提问作者Aaron Strickland

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 08:23:19