2014-08-31 3 views
1

Я хочу частично применить функцию с массивом аргументов. Когда я попытался использовать apply() на _.partial() Я получил ошибку типа в lodash.Как вы частично применяете функцию с несколькими аргументами?

function test(){ 
    return ([]).join.call(arguments,' ') 
} 


var p = _.partial.apply(null,test,[1,2,3]) //Type Error in lodash 


p(4) //should log "1 2 3 4" 

Любая помощь с этим была бы принята с благодарностью.

ответ

1

Вы хотите:

_.partial(test, 1, 2, 3) 
// equivalent to: 
_.partial.apply(null, [test, 1, 2, 3]) 

Или динамически:

var args = [1,2,3] 

_.partial.apply(null, [test].concat(args)) 
+0

Спасибо! Я не знаю, почему я этого не видел! –