Kwang Huat Ответов: 1

Храните данные из локального файла в переменную, когда страница будет готова


var persons;
        $(function () {
            $.getJSON("person.json", function(data){ persons = JSON.stringify(data); 
                console.log("This is inside: "+ persons); });
                console.log("This is outside" + persons);
            }
            getJSONData();
        });


я хочу получить и сохранить данные из локального файла(person.json) в переменную в самом начале. Но результат есть:
This is outside: undefined
This is inside: [{"name":"user1","gender":"male"},{"name":"user2"},{"gender":"female"}]


Итак, как я могу получить и сохранить данные в переменной в самом начале?

Что я уже пробовал:

var persons;
    function getJSONData() {
        $.getJSON("person.json", function(data){ persons = JSON.stringify(data); 
        console.log("This is inside: "+ persons); });
    }
    getJSONData();
    $(function () {
        console.log("This is outside: " + persons);
    });

Я пробовал это, но результат тот же...

1 Ответов

Рейтинг:
2

Arunprasath Natarajan

$.getJSON
это асинхронно, так что вы должны сделать:
$.getJSON("person.json", function(json) {
    console.log(json); // this will show the info it in firebug console
});