#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 изохрон; — Вне функции
изохрон = данные — В функции