Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.03.2015, 19:10
Профессор
Отправить личное сообщение для Siend Посмотреть профиль Найти все сообщения от Siend
 
Регистрация: 04.02.2012
Сообщений: 196

Массив функций
Подскажите где я ошибся?


var Redering = { //объект содержащий массив будущих функций           
Functions: []      
}
        
function AL() {  //объявили тестовую функцию         
alert("1")      
}       

Redering.Functions.push(AL) //добавили функцию в объект
   
Redering.Functions[0] //вызвали функцию


Не работает. Функция просто не откликается, свой alert я не получаю, консоль об ошибках тоже молчит(
Ответить с цитированием
  #2 (permalink)  
Старый 17.03.2015, 19:12
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

var Redering = { //объект содержащий массив будущих функций           
Functions: []      
}
        
function AL() {  //объявили тестовую функцию         
alert("1")      
}       

Redering.Functions.push(AL) //добавили функцию в объект
   
Redering.Functions[0]() //вызвали функцию
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #3 (permalink)  
Старый 17.03.2015, 19:17
Профессор
Отправить личное сообщение для Siend Посмотреть профиль Найти все сообщения от Siend
 
Регистрация: 04.02.2012
Сообщений: 196

Помогло, но проблема оказалась глубже. Усложняю задачу)
var Redering = {
            Functions: []
        }


        function NewGraphEditor(divName, canvasName, width, height) {
           ...
           ...
           ...
            var temp = new CanvasControl(document.getElementById(canvasName))
            Redering.Functions.push(temp.draw) //добавили функцию в массив
            return temp
        }       

      var Can1 = NewGraphEditor("GraphEditor", "lol")   
 
      function StartRendering() {
          window.requestAnimationFrame(function () {
              
//Can1.draw() - этот вариант РАБОТАЕТ 

              Redering.Functions[0]() // - этот вариант НЕ РАБОТАЕТ
              StartRendering()
          });
      }
Ответить с цитированием
  #4 (permalink)  
Старый 17.03.2015, 20:21
Профессор
Отправить личное сообщение для Siend Посмотреть профиль Найти все сообщения от Siend
 
Регистрация: 04.02.2012
Сообщений: 196

Проблема решена.
Ответить с цитированием
  #5 (permalink)  
Старый 18.03.2015, 14:50
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,060

Хрустальный шар подсказывает что что-то тут глубоко неправильное.
Ты точно думаешь что работать с массивом функций при каждом вызове window.requestAnimationFrame это хорошая идея?
Ответить с цитированием
  #6 (permalink)  
Старый 19.03.2015, 20:29
Профессор
Отправить личное сообщение для Siend Посмотреть профиль Найти все сообщения от Siend
 
Регистрация: 04.02.2012
Сообщений: 196

не я такой, задача такая, не тривиальная)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объединить несколько функций в одну ivanWantsToKnow Общие вопросы Javascript 11 16.02.2015 23:17
Выполнение асинхронных функций PavelX AJAX и COMET 6 04.03.2013 13:14
Создать массив функций (?) venzh jQuery 1 02.02.2012 04:11
Как создать многомерный массив FRIE Общие вопросы Javascript 29 02.06.2010 18:14
Подскажите, как вернуть js-скрипт массив Polkan AJAX и COMET 18 30.04.2010 22:30