Возможно, проблема в том, что вы используете два вызова getJSON, которые являются асинхронными вызовами.Это означает, что в то время как getJson запускает вызывающая функция завершает то, что ей нужно, и программе не нужно ждать результатов getJSON для запуска. Так что при запуске вашей функции MATH нет гарантии, что оба вызова getJSONзавершено.Не зная, как вызываются ваши функции AA и BB, я бы посоветовал, если возможно, объединить два вызова get JSON и вызов функции MATH, чтобы получить правильный ответ.
function AA(){
$.getJSON("url1.js", function(VALUEA){
BB();
});
}
function BB(){
$.getJSON("url2.js", function (VALUEB){
MATH();
});
}
function MATH() {
RESULT = int(VALUEB.json.yourVar) / int(VALUEA.json.yourVar);
alert(RESULT); }
РЕДАКТИРОВАТЬ: Удалена часть ответа, который вызвал бесконечный цикл.Извините, это был действительно мертвый ответ, о котором я должен был подумать лучше, прежде чем отправлять.Я все еще поддерживаю вышеупомянутое, хотя.