Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как присвоить значение полученное GET-запросом переменной? (https://javascript.ru/forum/misc/65020-kak-prisvoit-znachenie-poluchennoe-get-zaprosom-peremennojj.html)

4arizard 20.09.2016 15:34

Как присвоить значение полученное GET-запросом переменной?
 
Помогите разобраться с пременными.
Есть файл num.php:
<?php
    echo mt_rand(0, 100); // Возвращает случайное число от 0 до 100
?>

Есть html страница с JS:
var n; // Если я правильно понял, здесь объявляется глобальная переменная
$.get("/num.php",function(data){ // Оправка GET-запроса на страницу /num.php
    n = data; // Присваивание полученного ответа переменной
});
var result = n + 100; // Для проверки что все работает
console.log('Значение n = ' + n); // Значение n = undefined
console.log('Значение result = ' + result); // Значение result = NaN

Возникают следующие вопросы:
  1. Почему n не определено?
  2. Как правильно объявить переменную?
  3. Что возвращает get?
  4. Как из этих данных получить число?

laimas 20.09.2016 16:07

Цитата:

Сообщение от 4arizard
Почему n не определено?

Потому, что $.get("/num.php",function(data)..., это асинхронный процесс по отношению к var result = n + 100; ... etc.

Получили запросом - используйте.

4arizard 20.09.2016 16:23

Цитата:

Сообщение от laimas
это асинхронный процесс

Хм, а слона то я и не заметил...
Так работает:
$.get("/num.php",function(data){
    var n = parseInt(data, 10);
    var result = n + 100;
    console.log('Значение n = ' + n);
    console.log('Значение result = ' + result);
});

Спасибо за помощь.


Часовой пояс GMT +3, время: 16:37.