Использование переменной в другой функции Javascript

#javascript

Вопрос:

Здравствуйте У меня проблема с AJAX Я получил свои данные по URL, но я хочу использовать переменную IsochroneData в функции geo_json_add. Как я могу это сделать? Я могу консольно регистрировать данные, которые работают нормально. Но передача переменной в другую функцию — это моя проблема.

 $.getJSON("/isochrone", function (data) {  var isochroneData = data  console.log(data);  function geo_json_add(isochroneData) {  geo_json  .addData(isochroneData)  .addTo(map);  }  geo_json_add(isochroneData);  

Комментарии:

1. Код, который вы опубликовали, не является допустимым JavaScript. Если geo_json_add функция вложена в getJSON обратный вызов, она будет работать просто отлично, как есть.

Ответ №1:

Исправьте свой синтаксис и отступы

 $.getJSON("/isochrone", function (data) {  var isochroneData = data  console.log(data);  function geo_json_add(isochroneData) {  geo_json  .addData(isochroneData)  .addTo(map);  }  geo_json_add(isochroneData); })   

если вы хотите использовать geo_json_add в другом месте, объявите его за пределами getJSON.

 function geo_json_add(isochroneData) {  geo_json  .addData(isochroneData)  .addTo(map); }  $.getJSON("/isochrone", function (data) {  var isochroneData = data  console.log(data);   geo_json_add(isochroneData); })  

Ответ №2:

Если вы хотите сделать переменную глобальной, вы должны объявить ее вне функции, а затем установить ее значение в функции без декларативного ключевого слова, тогда она будет глобальной.

var изохрон; — Вне функции
изохрон = данные — В функции