Flex: реализация классического карри функционирует в actionscript?

Я получаю простое решение:

 


Мое значение в том, что передать событие onclick в javascript function sendData(), инициализировать переменную и взять ее методом обработчика событий jquery.

Это возможно, так как сначала sendData(valueid) вызывается и инициализирует значение. Затем после запуска jquery event get и используйте это значение.

Это прямое решение, а для решения для решения go Здесь .

7
задан Niels Bosma 12 December 2008 в 01:00
поделиться

2 ответа

Я должен признать, что никогда не понимал различия между "карри" и "неравнодушный". Я использую следующую функцию, чтобы сделать более или менее, что Вы хотите сделать:

package {
  public function partial( func : Function, ...boundArgs ) : Function {
    return function( ...dynamicArgs ) : * {
      return func.apply(null, boundArgs.concat(dynamicArgs))
    }
  }
}

примеры Использования:

var multiply : Function = function( a : Number, b : Number ) : Number { return a * b; }
var multiplyByFour : Function = partial(multiply, 4);

trace(multiplyByFour(3)); // => 12
9
ответ дан 7 December 2019 в 01:28
поделиться

Законченный с (в большой степени вдохновленный реализацией додзе):

public static function curry(func:Function, ... args:Array):*
{
    var arity:int = func.length;
    var currying:Function = function(func:Function, arity:int, args:Array):*
    {
        return function(... moreArgs:Array):* {
            if(moreArgs.length + args.length < arity)
            {
                return currying(func, arity, args.concat(moreArgs));
            }
            return func.apply(this, args.concat(moreArgs));
        }
    }
    return currying(func, arity, args);
}

Запрос в комментариях разделяет для показа примера того, как использовать это:

function foo(i:int, j:int):void
{
   trace(i+j);
}

function bar(fp:Function):void
{
   fp(2);
}

bar(FunctionUtils.curry(foo, 1)); //trace==3

Глупый пример, я знаю, но curry:ing чрезвычайно полезен. Взгляните на http://www.svendtofte.com/code/curried_javascript/ для теории.

1
ответ дан 7 December 2019 в 01:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: