Получение переменной Javascript из оператора $.get

-4

EDIT: Пожалуйста, не стесняйтесь удалять, я нашел соответствующий ответ в дубликатах, упомянутых выше. Извиняюсь.

У меня есть следующий код и, похоже, не могу выкопать переменные:

$('#button').click(function() {
alert(getRemaining(0));
}

function getRemaining(i){
var x;
$.get('files/remaining.txt', function(file){
x = file.split(",");
});
return x[i]
}

Мое предупреждение просто продолжает выходить как неопределенное. Что я делаю не так?

спросил(а) 2021-01-19T17:56:07+03:00 2 месяца, 3 недели назад
1
Решение
61

.get, является асинхронной функцией. Это означает, что выполнение вашего кода будет продолжаться до того, как оно закончится. Функция обратного вызова, которую вы передаете в .get будет вызываться после ее завершения (это основная причина для обеспечения обратного вызова).

Этот код будет предупреждать, как только .get.

$.get('files/remaining.txt', function(file){
x = file.split(",");
alert(x[0]);
});

ответил(а) 2021-01-19T17:56:07+03:00 2 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема