У меня есть следующий код, в котором я хочу, чтобы сохранить содержимое файла bar.txt
в переменной foo
:переменная JQuery становится неопределенным без причины
var foo;
jQuery.get('http://example.com/bar.txt', function(data) {
foo = data;
alert(foo);
});
alert(foo);
Проблема заключается в том, что, по-видимому, после того, как функции JQuery конец переменной становится неопределенной (хотя она была объявлена вне той области). Первый alert(foo)
отображает содержимое файла правильно, но второй ничего не отображает.
Может ли кто-нибудь сказать мне, что здесь происходит?
Хорошо, но тогда как я могу сохранить данные, которые я получаю внутри обработчика '$ .get', в переменной, которая находится снаружи? – federicot
Вы не можете «сохранить» его позже, если только вы не выполняете синхронный вызов, который не рекомендуется. Обратный вызов - это место, где вы «продолжаете» свой текущий код. Вы могли бы также получить голову вокруг асинхронного программирования сейчас, потому что вы будете использовать его много позже :) – David
Да, я думаю, я понял, это очень неудобно, хотя я привык к «линейному» программированию. Я помещаю весь код (который управляет содержимым текстового файла) внутри $ .get, и это сработало! так спасибо человеку – federicot