Показать сообщение отдельно
  #73 (permalink)  
Старый 10.05.2015, 19:33
Профессор
Отправить личное сообщение для UIjs Посмотреть профиль Найти все сообщения от UIjs
 
Регистрация: 24.04.2015
Сообщений: 183

кроме того eval сохраняет замыкание, по этому если запретить в обьявлении класса использовать замыкания во вне (а у меня это и так запрещено потому что все зависимости надо подключать как в ангуляре через параметры к функции), то тогда мы смоежм проивалить код функции описывающей класс и засунуть в её замыкание ссылки на свойства super parent и все такое

w = (function(){
    var qq = 11;
    return eval("(function(){ alert(qq) })")
})();


w()


поскольку обьявление класса не горячий кусок кода, так как классов будет не больше тысячи, а для яваскрипта сделать 1000 ивалов - ничто. то с быстротой тут проблема не стоит. единственное что так это нужно избежатьп аркинга кода класса. нужно использовать максимально нативные механизмы.


дальше встает проблема как передавать контекст this в те функции, которые мы запрашвиаем через parent и super


я просто думаю как сделать чтобы можно было писать не this.parent а просто parent, а дальше работала магия


можно например методы класса обернуть во врапперы, которые будут текущий this складывать в определенное место к которому parent будет иметь доступ. но опять же, врапперы. долго. нужно что то хитрее) помогай!

Последний раз редактировалось UIjs, 10.05.2015 в 19:39.
Ответить с цитированием