Извините, что спрашиваю об этом, но я искал везде и не могу уследить за этим.
Я пытаюсь переработать пример Google Maps версии 2, чтобы он работал в версии 3. У меня есть набор «конечных точек» на расстоянии езды от центральной точки, вокруг которой я хочу нарисовать многоугольник. Они записываются в массив (в коде их три, которые должны работать: driveMarkersArray - текущий, или drivePolyPoints или markersArray) Внутри функции process1direction(from,to), которая это делает, они наверняка есть, (хотя интересно фаербаг консоль сообщает о них в конце, после того как вся обработка завершена?) НО, когда затем обрабатывается в другой функции draw_DrivePolygon() для рисования многоугольника, массив оказывается пустым. Это просто объявления (я много проверял) или что-то связанное с асинхронным запросом, чтобы найти направления движения?
значения массива javascript недоступны вне функции
Ответы (1)
В JavaScript переменная имеет свой уровень функции области видимости. Не блочный уровень.
Посмотрите здесь для области видимости переменных в JavaScript
Область действия переменной и ключевое слово var.< /сильный>
person
Raghvendra Parashar
schedule
01.01.2013
Спасибо, не могли бы вы помочь мне, указав, как изменить переменную на уровень блока? Я просмотрел примеры и думаю, что объявил их глобально.
- person tony goodwin; 02.01.2013
:P
- person Šime Vidas   schedule 01.01.2013process1direction()
всегда будет возвращать неопределенное значение, потому что это асинхронная функция, и все же вы устанавливаете переменную в ее возвращаемое значение (которое, опять же, всегда неопределенное). - person   schedule 02.01.2013