В первую очередь, Вам нужно частичное - существует различие между частичным и карри - и здесь все, в чем Вы нуждаетесь, без платформы :
function partial(func /*, 0..n args */) {
var args = Array.prototype.slice.call(arguments, 1);
return function() {
var allArguments = args.concat(Array.prototype.slice.call(arguments));
return func.apply(this, allArguments);
};
}
Теперь, с помощью примера, можно сделать точно, что Вы после:
partial(out, "hello")("world");
partial(out, "hello", "world")();
// and here is my own extended example
var sayHelloTo = partial(out, "Hello");
sayHelloTo("World");
sayHelloTo("Alex");
Эти partial()
функция могла использоваться для реализации, но не приправление карри. Вот кавычка от сообщение в блоге на различии :
то, Откуда частичное приложение берет функцию и его, создает функцию, которая берет меньше аргументов, приправляя карри функции сборок, которые берут несколько аргументов составом функций, которые каждый берет отдельный аргумент.
Hope, которая помогает.
$("td").click(function(){
var column = $(this).parent().children().index(this);
var row = $(this).parent().parent().children().index(this.parentNode);
alert([column, ',', row].join(''));
})