无JavaScript基础如何提取JSON中link字段实现jQuery auto-fill
解决方法
首先你给出的是JSON片段,需要先补全为合法的JSON对象才能操作,完整结构参考如下:
const responseData = { "list": [ [ "List of recipes", [ { "name": "Eggs", "links": [ { "method": "Fry", "link": "https://example.com/category/fry" } ] } ] ] ] }
1. 提取单个指定link(适配你给出的示例结构)
如果结构固定和示例完全一致,直接按层级取值即可:
// 按层级索引取到目标link const targetLink = responseData.list[0][1][0].links[0].link; // 如果要填充到输入框,把inputBox替换为你实际的输入框id即可 document.getElementById('inputBox').value = targetLink;
2. 提取所有结构中的link字段(适配动态多数据场景)
如果后续list里会增加多个菜谱、多个链接,用遍历方法统一提取所有link:
function getAllLinks(data) { const links = []; data.list.forEach(item => { const recipeList = item[1]; recipeList.forEach(recipe => { recipe.links.forEach(linkItem => links.push(linkItem.link)); }); }); return links; } // 调用后得到所有link组成的数组 const allLinkList = getAllLinks(responseData);
内容的提问来源于stack exchange,提问作者GabeR
相关产品推荐
相关产品推荐

