首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用jquery从外部json文件加载数据?

问如何使用jquery从外部json文件加载数据?
EN

Stack Overflow用户
提问于 2020-06-12 10:26:37
回答 1查看 246关注 0票数 1

这是我的app.js文件

代码语言:javascript
复制
$(document).ready(function () {
        $.getJSON("http://localhost:3000/db.json", function (data) {

        $(data.as).each(function (index, value) {

            console.log(value);
        });
    });
});

这是db.json文件

代码语言:javascript
复制
{
  "as": [
    {
      "imageID": "1",
      "imageSource": "Popular Science 1",
      "alt": "Science 1"
    },
    {
      "imageID": "2",
      "imageSource": "Popular Science 2",
      "alt": "Science 2"
    }
  ]
}

例如,如何只获取Popular Science 2?如果我编写console.log(value[1]);,就会显示一个错误。如何索引数组?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-12 10:30:45

您可以简单地使用:

代码语言:javascript
复制
value.imageSource

因为value是这里的对象。

​

代码语言:javascript
复制
const data = {as:[{imageID:"1",imageSource:"Popular Science 1",alt:"Science 1"},{imageID:"2",imageSource:"Popular Science 2",alt:"Science 2"}]};

$(data.as).each(function(index, value) {
  console.log(value.imageSource);
});
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

​

如果您只需要Popular Science 2,那么就不需要循环。你可以简单地做:

​

代码语言:javascript
复制
const data = {as:[{imageID:"1",imageSource:"Popular Science 1",alt:"Science 1"},{imageID:"2",imageSource:"Popular Science 2",alt:"Science 2"}]};

console.log( data.as[1].imageSource );

​

或者,通过一些验证,比如:

​

代码语言:javascript
复制
const data = {as:[{imageID:"1",imageSource:"Popular Science 1",alt:"Science 1"},{imageID:"2",imageSource:"Popular Science 2",alt:"Science 2"}]};

// Vlidating that we actually have an array and data as index 1
if( data && data.as && data.as.length > 1){ 
  console.log( data.as[1].imageSource );
}

​

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62342327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档