从JSON文件中加载数据的数组中读取数据

时间:2017-10-04 17:31:50

标签: javascript jquery arrays json

我正在尝试将JSON文件加载到数组中,然后从数组中读取,但警报未显示任何数据。

JSON文件:data.json

[
{"Name":"name1", "Occupation":"occ1"},
{"Name":"name2", "Occupation":"occ2"},
{"Name":"name3", "Occupation":"occ3"},
{"Name":"name4", "Occupation":"occ4"},
{"Name":"name5", "Occupation":"occ5"}
]

JQuery代码

function getJsonData() {
    var arrJson = [];

    $.getJSON("data.json", function( data){
      arrJson = data;
    });
    return arrJson;     
};  

$(document).ready(function(){
    var data = [];
    data = getJsonData();
    //console.log(data);

    $.each(data, function(i, value){
        alert('index: ' + i + ',value: ' + value);
    });
});

我错过了什么?

此致 埃利奥·费尔南德斯

1 个答案:

答案 0 :(得分:0)

getJsonData();是一个异步函数,意味着它在不同的时间轴中返回一个答案,作为脚本的其余部分。

您需要做的是实施callback

否则,在异步函数中移动foreach循环也可以解决问题:

$.getJSON("data.json", function( data){
  arrJson = data;
  $.each(data, function(i, value){
        alert('index: ' + i + ',value: ' + value);
   });

});