Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.04.2014, 21:31
Аватар для LordSmile
Интересующийся
Отправить личное сообщение для LordSmile Посмотреть профиль Найти все сообщения от LordSmile
 
Регистрация: 16.03.2014
Сообщений: 12

FF не вызывает функцию
Доброго дня! Имеется проблемка с Firefox :
var a_0 = число;
var b_0 = число;
var a = myfunc(a_0, b_0).ix;
var b = myfunc(a_0, b_0).iy;
function myfunc(a_1 , b_1){
//простые математические вычисления, где a_1 и b_1 преобразуются в х и у
//т.е. x = f1(a_1 , b_1) и y = f2(a_1 , b_1)
return {ix : Math.ceil(x), iy : Math.ceil(y)}
}

Вот такой вот код не работает в Firefox. В Опера, Хром, Яндекс, в ИЕ все нормально работает - кроме FF. a и b не присваиваются - функция вообще почему-то не вызывается в FF.
Вообще-то a_0, b_0 приходят JSONом с сервера и через JSON.parse(this.responseText) попадают в скрипт, но так как выше, тоже не работает; если передавать функции не переменные, а числа - тоже не работает.
Подскажите пожалуйста что не так.
Пробую возвращать [Math.ceil(x), Math.ceil(y)], а потом a = myfunc(a_0, b_0)[0] и b = myfunc(a_0, b_0)[1] - тот же результат - везде работате кроме ФФ.

Последний раз редактировалось LordSmile, 30.04.2014 в 21:33.
Ответить с цитированием
  #2 (permalink)  
Старый 30.04.2014, 21:39
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

в консоль ошибок заглядывал? F12
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 30.04.2014, 21:44
Аватар для LordSmile
Интересующийся
Отправить личное сообщение для LordSmile Посмотреть профиль Найти все сообщения от LordSmile
 
Регистрация: 16.03.2014
Сообщений: 12

Извените за беспокойство - faultstart!
Вынес функцию за тело условия - все заработало в ФФ как и в остальных.
Ответить с цитированием
  #4 (permalink)  
Старый 30.04.2014, 23:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от LordSmile
Вынес функцию за тело условия
Функция-декларация не должна объявляться в блоках (if/else, while() и т.д.).
Такие случаи не регулируются стандартом ECMA. Поэтому поведение браузеров отличается.

К слову, на функции-выражения такого ограничения нет.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
передать параметры в функцию jQuery AJAX Lion_astana Общие вопросы Javascript 7 21.02.2014 17:25
Расширение для Safari. Как вызвать функцию из popover в global page? housewm Opera, Safari и др. 0 21.12.2013 06:07
передать анонимную функцию, вызывающую другую функцию с нужными параметрами Ваяс Общие вопросы Javascript 5 21.02.2013 20:12
Выполнить функцию заранее неизвестную Neokortex jQuery 2 13.02.2012 12:41
проблема с передачей параметров в функцию bartonom Элементы интерфейса 4 19.09.2011 12:41