![]() |
и потом, это не мой метод... это не я изобрёл так делать... :~)
|
Ну раз про него, то опять же, переместить назначение onPress в другое место нельзя, ссылку убить нельзя и т.п. В общем — не вариант.
|
почему нельзя?
Код:
delete(mc.onPress); |
Цитата:
Код:
function createDelegate (obj:Object, func:Function, arg:Array):Function { |
artcraft, я имел ввиду, что нельзя убивать вспомгательную ссылку, а вместе с этим и перенести всю функцию куда-нибудь ещё…
|
:~)
ну это и коню понятно что можно всё в один столбик написать без всяких импортов.... не в этом вопрос - вопрос: в чём конкретно проблема области видимости, "кривого" cпособа? до меня не доходит - чем он хуже? |
Цитата:
что такое вспомогательная ссылка? как это сделать правильным способом? |
а... дошло (плохо башка варит к ночи) вспомогательня ссылка это:
Код:
var self:Object = this; |
Да никак — юзать Delegate/Proxy и не мучаться.
Проблема «кривого» способа в том, что внутри вспомгательной функции this ссылается вовсе не на то, что нам нужно, поэтому и создается лишний мусор, вроде self. |
и куда её еще переносить?
для привязывания функции любым из методов нужна ссылка на функцию и ссылка на то что будет для неё this-ом Код:
var target:Object = this;Код:
function createDelegate (obj:Object, func:Function, arg:Array):Function {при "плохом" методе мы имеем болше символов и 2-е строки да согласен "правилный" метод нагляднее, но реально кода больше см. коммент#24 (хотя, безусловно нас это не волнует т.к. это менее важно чем читаемость кода) то что находится внутри вспомогательной функции не важно - туда ничего добавлять и не надо... потому она и вспомогательная. "правильный" способ - это ведь тоже вспомогательная функция, там ведь никто не стремится ничего менять... пока не вижу критических различий :umnik2: только чистоплюйство... |
| Часовой пояс GMT +4, время: 03:42. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.