簡體   English   中英

如何使用 jquery 從外部 json 文件加載數據?

[英]How to load data from external json file using jquery?

這是我的 app.js 文件

$(document).ready(function () {
        $.getJSON("http://localhost:3000/db.json", function (data) {

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

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

這是 db.json 文件

{
  "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]); ,顯示錯誤。 如何索引一個數組?

您可以簡單地使用:

value.imageSource

因為這里的value是 object。

 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); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


如果你只想要Popular Science 2 ,那么就不需要循環了。 你可以簡單地做:

 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 );

或者,通過一些驗證,例如:

 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 ); }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM