标签:jquery json javascript html5 html
在我开始之前,我是初学者,我希望在提出问题时我不会滥用条款.
我开始编写一个使用英特尔XDK的HTML5 / Javascript应用程序从在线api查询视频游戏的条形码,我只需要一个JSON结果(游戏的标题)然后继续在我的内部使用应用程序.
JSON结果如下所示:
{"0":{"productname":"The Elder Scrolls V: Skyrim","imageurl":"http://ecx.images-amazon.com/images/I/413Gdr3FzqL._SL160_.jpg","producturl":"","price":"14.00","currency":"USD","saleprice":"","storename":"N/A"},"1":{"productname":"Skyrim X360","imageurl":"http://ecx.images-amazon.com/images/I/41QbF1Vg5KL._SL160_.jpg","producturl":"","price":"18.00","currency":"USD","saleprice":"","storename":"N/A"},"2":{"productname":"Bethesda Softworks Skyrim X360","imageurl":"http://ecx.images-amazon.com/images/I/41X97hqaJwL._SL160_.jpg","producturl":"","price":"23.95","currency":"USD","saleprice":"","storename":"N/A"},"3":{"productname":"BETHESDA SOFTWORKS 11763 / Skyrim X360","imageurl":"http://ecx.images-amazon.com/images/I/41IaEzP-6pL._SL160_.jpg","producturl":"","price":"34.00","currency":"USD","saleprice":"","storename":"N/A"}}
我想在我的应用程序中使用的只是第一个’productname’条目.
JSON来自api提供者,我有一个帐户,所以它在远程URL上,例如我们称之为URL:http://JsonIs.here
我希望能够查询JSON URL并返回“The Elder Scrolls V:Skyrim”作为字符串,然后我可以继续在应用程序的其他地方使用.
我的条形码扫描工作正常,我可以创建GET请求URL,我只是不知道从哪里开始调用该URL然后返回我需要的一小段信息.
解决方法:
你可以使用jQuery的$.getJSON
.该方法返回一个具有易于理解的API的promise.
var productName;
$.getJSON('http://JsonIs.here').then(function (data) {
productName = data[0].productname;
});
这里有几点需要注意. 1)getJSON是一个异步进程,因此productName不会立即可用,因此您可能需要稍微重新构建代码以解决此问题.你不能,例如这样做:
var productName;
$.getJSON('http://JsonIs.here').then(function (data) {
productName = data[0].productname;
});
console.log(productName); // undefined
您可能会发现this article很有用,因为它涵盖了如何从深度异步过程返回值.
2)getJSON自动解析JSON所以你不必为什么,在这个例子中,我调用了参数数据而不是json来节省混淆.
标签:jquery,json,javascript,html5,html 来源: https://codeday.me/bug/20190711/1433481.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。